开启辅助访问
帐号登录 |立即注册

MySQLi针对多条SQL语句的执行

 
一、多条SQL语句编辑操作
<?php .
header( ' content-type: text/html ; charset=utf-8');
$mysqli=new mysqli( ' localhost','root' ,'root' , 'test');
if( $mysqli->errno){
die( 'Connect Error' . $mysqli- >error);
}
$mysqli->set_ charset('UTF8');
$sql="INSERT user(username, password, age ) VALUES( ' imooc3' , ' imooc3' ,32);";
$sql.="UPDATE user SET age=5 WHERE id=28;";
$sql.="DELETE FROM user WHERE id=25;" ;
//针对多条SQL语句的查询
$res=$mysqli- >multi_ query($sql);
var_dump($res);


只要第一条语句是正确的,var_dump($res);就会返回为真,否则返回为假,当有一条语句错误,则下一条语句不会执行。


二、多条SQL语句查询操作
<?php .
header( ' content-type: text/html ; charset=utf-8');
$mysqli=new mysqli( ' localhost','root' ,'root' , 'test');
if( $mysqli->errno){
die( 'Connect Error' . $mysqli- >error);
}
$mysqli->set_ charset('UTF8');
$sq1.="SELECT * FROM mysql.user;";
$sql.="SELECT CURRENT_ USER();";
$sql.="SELECT NOW();";
//第一步:使用use_result()或者store_ result():获取第一条查询产生的结果集
//第二步:使用more_ results():检测是否有更多的结果集
//第三步:使用next_ result():将结果集指针向下移动一位
if( $mysqli- >multi_ query($sq1)){
do{
if($mysqli_ result=$mysqli->store_ result()){
$rows[]=$mysqli_ result->fetch_all (MYSQLI_ ASSOC);
}
}while($mysqli- >more_ results() && $mysqli->next_result());
}else{
echo $mysqli - >error;
}
print_ r($rows);
$mysqli->close();

回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

友情链接
  • 艾Q网

    提供设计文章,教程和分享聚合信息与导航工具,最新音乐,动漫,游戏资讯的网站。