MySQLi_Connect无法同时更新sql表的多行字段


MySQLi_Connect cannot update field for multiple rows of sql table at same time

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

假设我有一个名为"databasename"的数据库,其中有一个表名为"Pets",其中有以下列:"Cat"(varchar)、"Dog"(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);
?>

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

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

我一点也不奇怪这不起作用。尝试仅使用update启动查询;没有理由使用sql安全更新模式。