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

來源:互聯網
上載者:User

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();
?>


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.