hp调用存储过程后再执行sql就提示Commands out of sync; you can't run this command now
,
请问是什么问题?
要解决这个问题,需要用mysqli的multi_query
方法
<?php
$mysqli = new mysqli("localhost", "root", "sbqcel", "test");
if (mysqli_connect_errno())
{
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
echo 'result1:<br />';
$mysqli->autocommit(FALSE);
if ($mysqli->multi_query("call test1();"))
{
do {
if ($result = $mysqli->store_result()) {
while ($row = $result->fetch_row()) {
printf("%s\n", $row[0]);
}
$result->close();
}
} while ($mysqli->next_result());
}
$mysqli->commit();
echo "<br />";
echo "result2:<br />";
if ($result2 = $mysqli->query("select val from tb1;"))
{
while ($row = $result2->fetch_row()) {
printf ("%s <br />", $row[0]);
}
$result2->close();
}
else
{
echo $mysqli->error;
}
$mysqli->close();
?>
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。