php函数mysql_query批量执行多句sql语句
2016-04-04 00:00
483 查看
正常情况下用php的mysql_query函数是不能批量执行多句CREATE TABLE之类的语句的;
而有些场景;比如说有一个sql备份文件、又或是程序初始化时创建数据表结构的时候需要批量执行文件中的sql语句;
解决这个问题可以用explode函数按';'号把sql语句拆成数组;再通过循环执行mysql_query即可;因为每句sql都是以';'号结束的;
但是考虑到sql语句中可能有实体符号 之类的;如果按';'号来拆;容易误伤;所以用preg_split正则来拆更靠谱;
示例环境:
sql文件:./thinkbjy.sql
执行 echo mysql_error().'<br>';用来查看是否有错误;
而有些场景;比如说有一个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>';用来查看是否有错误;
相关文章推荐
- Ant_的最完整build.xml解释
- Apue学习:线程
- UITableView优化
- DuiLib(6)——界面管家CPaintManagerUI的函数简介
- UICollectionView基础
- lintcode:Unique Binary Search Trees II
- DuiLib(5)——CWindowWnd窗口函数简介
- [Queue]——面向接口编程
- 【POJ2926】Requirements【二进制】【最大曼哈顿距离】
- String、StringBuffer和StringBuilder
- lintcode: Unique Binary Search Trees
- [html][LigerUI]使用示例
- DELL DOSA 6.X 服务器引导光盘Dell Systems Build and Update Utility ISO下载地址
- IOS9 UIStackView简介
- DuiLib(4)——消息响应
- Android 入门三 UI界面
- 02-线性结构3 Pop Sequence
- request 和 response之间实现servlet线程非阻塞
- Liferay 6.1开发学习(四):Service Builder
- Android入门(五)UI-单位与尺寸、ListView