问题列表分类: PHP为什么在PHP代码中:mysql_query 执行多条拼接update语句不行,却能在phpmyadmin里执行?
0
头像鞍山陈奕迅 asked 2年 ago

因为由于项目的需要,我需要批量执行update语句,我是用的foreach循环,我想的是:把所有需要update的语句循环并拼接成一条语句,然后再用mysql_query来执行,拼接成功的sql语句,在php文件中用mysql_query就是不执行,但是在phpmyadmin却能执行成功?不明白是什么问题!

我的PHP文件代码如下图:

php mysql_query代码

 

2 Answers
1
Best Answer
头像付杰 管理员 answered 2年 ago

首先:需要申明的是,mysql_query只支持发送一条查询,不支持多条查询;因为每一个sql语句都是以”;”结束,同样mysql_query只执行一条语句也是为了安全着想;
其次:看了你的问题和代码,解决办法有两个:

1、放弃你的程序设计想法
sql语句还是一条一条的执行,将msyql_query还是放入foreache循环代码中;

2、放弃mysql,用mysqli;
mysqli 有一个函数是可以批量执行拼接的sql语句的:myqli_muti_query;详细的说明请自行查询PHP手册;

0
头像付杰 管理员 answered 2年 ago

也有人说用“存储过程”,没有实践过具体不清楚!