PHP mysqli 增强 批量执行sql 语句的实现代码

发布时间:   浏览: 次  作者: Dede58
mysqli 增强-批量执行sql 语句
 
复制代码 代码如下:
 
 
<?php
 
//mysqli 增强-批量执行sql 语句
 
//批量执行dql
//使用mysqli的mysqli::multi_query() 一次性添加3个用户
 
$mysqli =new MySQLi("localhost","root","root","test");
if($mysqli->connect_error){
die ("连接失败".$mysqli->connect_error);
}
 
//注意分号
$sqls="insert into user1 (name,password,email,age) values('AAA',md5('AAA'),'AAA@hu.com',25);";
$sqls.="insert into user1 (name,password,email,age) values('BBB',md5('BBB'),'BBB@hu.com',25);";
$sqls.="insert into user1 (name,password,email,age) values('CCC',md5('CCC'),'CCC@hu.com',25);";
 
//批量执行dml 可以混合使用delete insert update 最好不要使用select
//$sqls.="update user1 set age=15 where id=1;";
//$sqls.="delete from user1 where id=10";
 
$res=$mysqli->multi_query($sqls);
 
if(!$res){
echo "操作失败".$mysqli->error;
}else{
echo "OK";
}
 
?>
 
 
2、批量查询
复制代码 代码如下:
 
 
<?php
 
//使用mysqli的mysqli::multi_query() 一次性查询表的机构和表中的内容
 
//1、创建mysqli对象
$mysqli=new MySQLi("localhost","root","root","test");
if($mysqli->connect_error){
die("连接失败".$mysqli->connect_error);
}
//2、批量查询语句
$sqls="select *from user1;";
$sqls.="desc user1";
//3、处理结果
//如果成功,至少有一个结果集
if($res=$mysqli->multi_query($sqls)){
 
do{
//取出第一个结果集
$res=$mysqli->store_result();
while($row=$res->fetch_row()){
foreach($row as $val){
echo '--'.$val;
}
echo '<br/>';
}
 
//及时释放内存
$res->free();
//判断是否还有结果集
if($mysqli->more_results()){
echo "********新的结果集***************<br/>";
}else{
break;
}
 
}while($mysqli->next_result());
 
//4、关闭资源
$mysqli->close();
?>
 

免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。

Copyright © 2005-2019 dede58 版权所有 Power by DedeCms

在线客服