脚本宝典收集整理的这篇文章主要介绍了PHP:一个mysql_query语句中的多个SQL查询,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
– >不能假定已经安装了MySQL命令行客户机(MysqL –help) – 用于直接加载sql文件
– >不能假定安装了MysqLi扩展
/* contents of dump.sql,including comments */ DELETE From t3 WHERE body = 'some text; wITh SEMicolons; scattered; throughout'; DELETE From t2 WHERE name = 'hello'; DELETE FROM t1 WHERE id = 1;
下面的explode()将不起作用,因为某些转储内容的值包含分号.
$sql = explode(';',file_get_contents('dump.sql')); foreach ($sql as $key => $val) { MysqL_query($val); }
>脚本builtin不能由MysqL_query()执行的命令,如USE.
>没有以分号结束的语句,如DELIMITER
.
>包含分号但不在引号内的语句,如CREATE PROCEDURE.
我不知道一个简单的方法来处理这个任务,而不会弹出MySQL命令行客户端.我意识到你说你不能依赖该客户端存在,但没有客户端,您需要大量的PHP代码来解析脚本并适当地执行语句.
您可能可以在phpMyAdmin产品中找到这样的代码.但是,该产品是根据GPL许可的,所以如果您使用任何代码,您还必须根据GPL许可您自己的项目.
另请参阅我对这些相关问题的答案:
> Running MySQL *.sql files in PHP
> Loading .sql files from within PHP
> is it possible to call a sql script from a stored procedure in another sql script?
以上是脚本宝典为你收集整理的PHP:一个mysql_query语句中的多个SQL查询全部内容,希望文章能够帮你解决PHP:一个mysql_query语句中的多个SQL查询所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。