我试图在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()
答案 0 :(得分:2)
你需要用分号结束一个语句,然后在开始下一个
之前放一个空格Caused by: org.hibernate.AnnotationException: Use of @OneToMany or @ManyToMany targeting an unmapped class: es.sidelab.cuokawebscraperrestserver.beans.UserActivity.favoriteProducts[java.lang.Long]
此外,您正在使用面向对象的功能而不是程序功能。所以把它改成这个
$sql = "UPDATE table1 SET column='1' WHERE id='1'; ";
答案 1 :(得分:0)
我通过替换:
来修复它if (!$mysqli->multi_query($link, $sql)) {
使用:
if (mysqli_multi_query($link,$sql)) {