multi_query "Commands out of sync" after Insert
| From: | J. Hill | Date: | Sat, 12 Jan 2008 01:58:13 +0000 |
| Subject: | multi_query "Commands out of sync" after Insert | ||
| Groups: | php.db | ||
| Request: | Send a blank email to php-db+get-44511@lists.php.net to get a copy of this message | ||
I wouldn't think there would be a result set from a mysqli multi_query when the query is a group of insert statements (there is no auto_increment column), but I get a "commands out of sync" error on my next query.
Originally, I had:
foreach ( . . . .
$sql. = "insert into psc (pid, lft, rgt) values ($pid, $lft, $rgt);";
}
if(!$mysqli->multi_query($sqlgeo)) {
echo $mysqli->error;
}
. . . [next sql statement, which fails with the "commands out of sync" error]
Now, the only solution I've found is to change my simple multi_query to:
if($mysqli->multi_query($sqlgeo)) {
do{if($result=$mysqli->store_result()){$result->close();}} while($mysqli->next_result());
}else{
echo $mysqli->error;
}
It seems like there should be a better solution than my current one?
Thanks for any suggestions,
Jeff
Using PHP 5.2.3, MySQL standard-5.0.27 on Debian Etch