繁体   English   中英

运行多个SQL查询不起作用

[英]Running multiple SQL queries is not working

我试图在1个php中运行多个查询:

$sql = "UPDATE table1 SET column='1' WHERE id='1'";
$sql.= "INSERT INTO table2(column1, column2) VALUES ('1', '2')";
if (!$mysqli->multi_query($link, $sql)) {

当我运行它时,我得到一个错误。 有人知道我的脚本出了什么问题吗?

这是我的完整脚本:

<?php
$link = mysqli_connect("localhost", "root", "", "db");                   
if($link === false){
die("ERROR: Could not connect. " . mysqli_connect_error());
}
$sql = "UPDATE table1 SET column='1' WHERE id='1'";
$sql.= "INSERT INTO table2(column1, column2) VALUES ('1', '2')";
if (!$mysqli->multi_query($link, $sql)) {

echo "Success";
} else {
 echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}

// Close connection
mysqli_close($link);
?>

编辑1:

我收到以下错误:注意:未定义的变量:第24行........ / script.php中的mysqli

致命错误:在第24行的........ / script.php中的非对象上调用成员函数multi_query()

您需要以分号结束一个语句,然后在开始下一个语句之前放置一个空格

$sql = "UPDATE table1 SET column='1' WHERE id='1'; ";

另外,您使用的是面向对象的函数,而不是过程式的。 所以改成这个

if (!$mysqli_multi_query($link, $sql)) {

我通过替换来修复它:

if (!$mysqli->multi_query($link, $sql)) {

带有:

if (mysqli_multi_query($link,$sql)) {

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM