Home > Database > Mysql Tutorial > body text

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

WBOY
Release: 2016-06-01 13:24:15
Original
805 people have browsed it

bitsCN.com

mysqli 增强-批量执行sql 语句

    //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、批量查询

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

bitsCN.com
Related labels:
source:php.cn
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template