zoukankan      html  css  js  c++  java
  • PHP mysqli 增强批量执行sql 语句

    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();
    ?>
  • 相关阅读:
    前端导出excel文件
    promise和async/await的用法
    vue element 导出 分页数据的excel表格
    mac net.core 安装问题总结
    npm报MSBUILD错误的解决办法
    现大前端开发环境配置
    git 常用命令
    NodeJs (一)
    VUE 组件通信、传值
    vue-cli 第一章
  • 原文地址:https://www.cnblogs.com/pwm5712/p/3052695.html
Copyright © 2011-2022 走看看