Php MySQL-如何在一行中运行多个更新查询?
如何在一行中运行两个更新查询?使用您可以实现的Mysqli扩展,您可以使用Mysqli\u multi\u query运行多个查询:Php MySQL-如何在一行中运行多个更新查询?,php,mysql,Php,Mysql,如何在一行中运行两个更新查询?使用您可以实现的Mysqli扩展,您可以使用Mysqli\u multi\u query运行多个查询: $sql = "UPDATE user SET password = '$new_password' WHERE temp_url = '$temp_code';"; $sql = "UPDATE user SET temp_url = '' WHERE user_name = '$user_name_frmdb';"; 即使where子句不同,它们是否都在同
$sql = "UPDATE user SET password = '$new_password' WHERE temp_url = '$temp_code';";
$sql = "UPDATE user SET temp_url = '' WHERE user_name = '$user_name_frmdb';";
即使where子句不同,它们是否都在同一行上工作?根据NewFurnity,这是不受支持的:@cxminer这不完全适用于此问题。对于旧的
mysql.*
api是,mysqli不支持它支持多个查询。OP没有提到他们使用的api。因此,它是受支持的,也是可能的。我希望Mysqli会支持,但我不知道如何编写我的appologize,Hanky是对的,可以使用Mysqli_multi_query(),请参阅本页:用分号分隔查询
并修复语法错误我已经更新了sql字符串,您需要使用它,确保您已经安装了mysqli&连接正在mysqlii tryed$new\u password=$\u POST['password']上运行;$sql=“更新用户设置密码='$new\u password',其中temp\u url='$temp\u code';$sql.=“更新用户集临时url=”,其中user\u name=“$user\u name\u frmdb'”;if(mysqli_multi_query($conDB,$sql)){echo“ok”}但不是working@Hanky您能批准我的编辑吗?这样我们就可以消除语法错误,在mysql字符串$sql=“Update user SET password='$new\u password'中的第一次查询后显示分号和分号,其中temp\u url='$temp\u code';”; $sql.=“更新用户集临时url=”,其中用户名=“$user\u name\u frmdb”;
$sql = "UPDATE user SET password = '$new_password' WHERE temp_url = '$temp_code';";
$sql .= "UPDATE user SET temp_url = '' WHERE user_name = '$user_name_frmdb';";
// Execute multi query
if (mysqli_multi_query($con, $sql)) {
// Query successful
}