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

正常情况下用php的mysql_query函数是不能批量执行多句CREATE TABLE之类的语句的;
而有些场景;比如说有一个sql备份文件、又或是程序初始化时创建数据表结构的时候需要批量执行文件中的sql语句;
解决这个问题可以用explode函数按';'号把sql语句拆成数组;再通过循环执行mysql_query即可;因为每句sql都是以';'号结束的;
但是考虑到sql语句中可能有实体符号  之类的;如果按';'号来拆;容易误伤;所以用preg_split正则来拆更靠谱;
示例环境:
sql文件:./sqeven.sql
$sql_array=preg_split("/;[\r\n]+/", file_get_contents('./sqeven.sql'));
foreach ($sql_array as $k => $v) {
mysql_query($v,$link);
echo mysql_error().'<br>';
}

#mysql# #php#

评论0

  • 没有任何评论
评论请先登录

最近热帖

  1. 基于 Harbor 搭建 Docker 私有镜像仓库 789046
  2. PPS代理节点池 287323
  3. PPS代理节点池② 196654
  4. PPS代理节点池③ 166505
  5. 订阅池记录 143486
  6. V2ray免费账号 12604
  7. WEB代理地址 4011
  8. 全栈开发笔记 3575
  9. GITHUB项目 2838
  10. 百度的无刷新搜索之PJAX 2536

近期热议

  1. GITHUB项目 55
  2. PPS代理节点池 50
  3. WEB代理地址 43
  4. 全栈开发笔记 42
  5. ROBOT机器人之路 31
  6. PPS代理节点池③ 26
  7. PPS代理节点池② 20
  8. C++回归之路 19
  9. OCR识别探索 16
  10. 错误笔记本 14