>  기사  >  데이터 베이스  >  PHP mysqli 增强 批量执行sql 语句的实现代码_MySQL

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

WBOY
WBOY원래의
2016-06-01 13:24:15804검색

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
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.