mysqli的加強功能

批量執行sql語句

批量執行dml語句
基本語法
$sqls="sql1.sql2.sql3...."
mysqli::multi_query($sqls)
案例:
$mysqli=new mysqli("localhost","root","","test");
if($mysqli->connect_error){
die($mysqli->connect_error);
}
$sqls="insert into user1(name,password,email,age) values('宋江','aaa','aa@qq.com',45);";
$sqls.="insert into user1(name,password,email,age) values('吳用','aaa','aa@qq.com',46);";
$sqls.="insert into user1(name,password,email,age) values('李逵','aaa','aa@qq.com',47);";

$a=$mysqli->multi_query($sqls);
if(!$a){
echo "執行失敗";
}else{
echo "成功";
}
$mysqli->close();

批量執行DML語句能夠混合使用delete insert update 語句,最好不要使用select語句。


批量執行dql語句
它能夠一次性的取回多個結果集

//打開mysqli對象
$mysqli=new mysqli("localhost","root","","test");
//批量查詢
$sqls="select * from emp;";
$sqls.="select*from user1;";
//處理結果
if($res=$mysqli->multi_query($sqls)){
do{
//從mysqli鏈接取出第一個結果集
$result=$mysqli->store_result();
//顯示mysqli result對象
while($row=$result->fetch_row()){
foreach($row as $key => $val){
echo"--$val";
}
echo"
";
}
$result->free();
echo"
新的結果集
";
}while($mysqli->next_result());
}
相關文章
相關標籤/搜索