Home  >  Article  >  Backend Development  >  php mysqli executes sql statement program code in batches_PHP tutorial

php mysqli executes sql statement program code in batches_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 17:06:14871browse

This article will introduce to you the PHP mysqli batch execution of sql statement program code. Friends who need to know more can refer to it.

mysqli enhancement-batch execution of sql statements

The code is as follows Copy code
 代码如下 复制代码


//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";
    }

?>


<🎜> //mysqli enhancement-batch execution of sql statements<🎜> <🎜> //Batch execution of dql
//Use mysqli's mysqli::multi_query() to add 3 users at one time

$mysqli =new MySQLi("localhost","root","root","test");
If($mysqli->connect_error){
die ("Connection failed".$mysqli->connect_error);
}

//Note the semicolon
$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);";

//To execute dml in batches, you can use delete, insert, and update together. It is best not to use 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 "Operation failed".$mysqli->error;
}else{
echo "OK";
} ?>

2. Batch query

The code is as follows
 代码如下 复制代码

//使用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 '
';
            }

            //及时释放内存
            $res->free();
            //判断是否还有结果集
            if($mysqli->more_results()){
                echo "********新的结果集***************
";
            }else{
                break;
            }

        }while($mysqli->next_result());

    }   
    //4、关闭资源
    $mysqli->close();
?>

Copy code

//Use mysqli's mysqli::multi_query() to query the organization and contents of the table at one time

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn