码迷,mamicode.com
首页 > 数据库 > 详细

php函数mysql_query批量执行多句sql语句

时间:2016-04-05 02:15:41      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:sql语句   数据表   执行文件   程序   

正常情况下用php的mysql_query函数是不能批量执行多句CREATE TABLE之类的语句的;

而有些场景;比如说有一个sql备份文件、又或是程序初始化时创建数据表结构的时候需要批量执行文件中的sql语句;

解决这个问题可以用explode函数按‘;‘号把sql语句拆成数组;再通过循环执行mysql_query即可;因为每句sql都是以‘;‘号结束的;

但是考虑到sql语句中可能有实体符号  之类的;如果按‘;‘号来拆;容易误伤;所以用preg_split正则来拆更靠谱;

示例环境:

sql文件:./thinkbjy.sql

        $sql_array=preg_split("/;[\r\n]+/", file_get_contents(‘./thinkbjy.sql‘));
        foreach ($sql_array as $k => $v) {
           mysql_query($v,$link);
           echo mysql_error().‘<br>‘;
        }

执行 echo mysql_error().‘<br>‘;用来查看是否有错误;

技术分享


php函数mysql_query批量执行多句sql语句

标签:sql语句   数据表   执行文件   程序   

原文地址:http://shuaibai123.blog.51cto.com/10163353/1760267

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!