[英]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.