MySQLi_Connect不能同时为多行sql表更新字段

时间:2016-04-09 21:35:40

标签: php sql mysqli mysqli-multi-query

在我的php代码中,我试图更新sql数据库表的所有行,这些行具有2个不同字段/列的特定值。当我运行代码时,不会对sql表进行更新。

假设我有一个名为" databasename"的数据库。有一张名为" Pets"这些专栏:" Cat" (varchar),"狗" (varchar)& "喜欢" (布尔)。我想标记所有具有Cat = Sylvester& Dog = Clifford,最喜欢的列中值为1。

这是我的代码:

<?php 
$connect = mysqli_connect("localhost","root","","databasename");
$dog='Clifford';
$cat='Sylvester';
$query="SET sql_safe_updates=0";
$query.="UPDATE Pets SET Favorite = 1 WHERE Dog= $dog AND Cat = $cat";
  mysqli_multi_query($connect,$query);
?>

1 个答案:

答案 0 :(得分:0)

如果您打印出查询字符串,您会看到它是:

$query="SET sql_safe_updates=0UPDATE Pets SET Favorite = 1 WHERE Dog= $dog AND Cat = $cat";

我并不感到惊讶,这不起作用。尝试使用update启动查询;没有理由进行sql安全更新模式。