出于某种原因,我想使用php mysql查询功能删除我表中的一些记录。这是我写的
$sql = "delete from progress where first_date='2010-01-01' and last_date='2010-01-31';
delete from progress where first_date='2010-02-01' and last_date='2010-02-28';
delete from progress where first_date='2010-03-01' and last_date='2010-02-31';
delete from progress where first_date='2010-04-01' and last_date='2010-02-30';
delete from progress where first_date='2010-05-01' and last_date='2010-02-31';";
if(!mysql_query($sql)) echo "Error deleting records";
这就是我得到的,“删除记录时出错”。但是当使用mysql_error()进行它时,它毕竟没用。任何人都知道如何处理这个?感谢之前
答案 0 :(得分:6)
mysql_query()无法执行多个语句。
使用mysqli_multi_query()或多次调用mysql_query()。
答案 1 :(得分:3)
使用mysql_query()
时,一次不能发送多个SQL查询。这就是为什么它失败并返回错误。
答案 2 :(得分:0)
您可以为每个查询创建不同的变量,然后为创建的每个变量调用mysql_query
。
当我想执行两个查询来一次选择和更新时,我这样做了。
答案 3 :(得分:0)
为什么不将所有查询合并为一个?
$ sql =" DELETE FROM progress WHERE(first_date =' 2010-01-01' AND last_date =' 2010-01-31')OR(first_date =& #39; 2010-02-01'和last_date =' 2010-02-28')或(first_date =' 2010-03-01' AND last_date =' 2010-02-31')或(first_date =' 2010-04-01' AND last_date =' 2010-02-30')或(first_date =' 2010 -05-01' AND last_date =' 2010-02-31')";