mysqli 的多sql语句执行有关问题
程序员文章站
2022-06-11 14:05:59
...
mysqli 的多sql语句执行问题
为啥会报错:Commands out of sync; you can't run this command now
这句报错,对应的查询语句是
$sql = "select * from login";
$res = $mysqli->query($sql);
非常不解,请答案,没百度到。
------解决方案--------------------
先把multi_query的结果集释放了,再进行查询
//对象创建
$mysqli = new mysqli('localhost', 'root', 'nagiosxi','hrsystem');
//连接是否出错
if($mysqli->connect_error)
{
die('connect database error'.mysqli_connect_error());
}
$sql = "insert into login (user, pass, email, type) values ('dengchao1', md5('dengchao123'), 'dengchao1@gmail.com', 0);";
$sql .= "insert into login (user1, pass, email, type) values ('dengchao1', md5('dengchao123'), 'dengchao1@gmail.com', 0)";
$res = $mysqli->multi_query($sql);
if($res && $mysqli->affected_rows > 0)
{
echo "insert ok
rows: ".$mysqli->affected_rows;
}
else
{
//$mysqli->close();
die('insert error
'.$mysqli->error.$mysqli->close());
}
if(!is_bool($res))
{
$res->free();
}
$sql = "select * from login";
$res = $mysqli->query($sql);
echo $mysqli->error."
";
if($res)
{
while($row = $res->fetch_row())
{
foreach($row as $key => $val)
{
echo "--$val";
}
echo "
";
}
}
if(!is_bool($res))
{
$res->free();
}
$mysqli->close();
?>
为啥会报错:Commands out of sync; you can't run this command now
这句报错,对应的查询语句是
$sql = "select * from login";
$res = $mysqli->query($sql);
非常不解,请答案,没百度到。
------解决方案--------------------
先把multi_query的结果集释放了,再进行查询
相关文章
相关视频
推荐阅读
-
PHP使用mysqli同时执行多条sql查询语句的实例
-
有关mysql中sql的执行顺序的小问题
-
关于SQL语句中的AND和OR执行顺序遇到的问题
-
有关mysql中sql的执行顺序的小问题
-
Mysql使用kill命令解决死锁问题(杀死某条正在执行的sql语句)
-
解决python 执行sql语句时所传参数含有单引号的问题
-
PHP mysqli 增强 批量执行sql 语句的实现代码_MySQL
-
一个关于php执行mysql语句的有关问题,头都快搞炸,求前辈
-
php-mysql 问题笔记一——在命令行中可以执行的sql语句,无法从php页面页面执行!,php-mysqlsql_PHP教程
-
新手刚学PHP,问个SQL插入语句中文乱码的有关问题