PHP mysqli 加強 批量執行sql 語句的實現代碼

本篇文章介紹了,在PHP中 mysqli 加強 批量執行sql 語句的實現代碼。須要的朋友參考下。php


mysqli 加強-批量執行sql 語句
html

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

二、批量查詢

<?php
    //使用mysqli的mysqli::multi_query() 一次性查詢表的機構和表中的內容
    //一、建立mysqli對象
    $mysqli=new MySQLi("localhost","root","root","test");
    if($mysqli->connect_error){
        die("鏈接失敗".$mysqli->connect_error);
    }
    //二、批量查詢語句
    $sqls="select *from user1;";
    $sqls.="desc user1";
    //三、處理結果
    //若是成功,至少有一個結果集
    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());
    }    
    //四、關閉資源
    $mysqli->close();
?>
參考閱讀:http://www.manongjc.com/article/1193.html
相關文章
相關標籤/搜索