Mysqli сохраняет о том, что есть ошибка синтаксиса в первой избранной части моего «комбинированный» запрос, как показано ниже:PHP MySQLi - хороня транзакции в одном запросе
$my_massive_query =
'START TRANSACTION WITH CONSISTENT SNAPSHOT;
SELECT d.id AS `Location ID`, ...
SELECT d.id AS `Location ID`, ...
SELECT d.id AS `Location ID`, ...
SELECT d.id AS `Location ID`, ...
SELECT d.id AS `Location ID`, ...
COMMIT';
$mysqli->query($my_massive_query);
Является ли это «не допускается» в PHP? Нужно ли использовать MySQLi функции, такие как следующие:
$mysqli->autocommit(FALSE);
$mysqli->query("SELECT ...");
$mysqli->query("SELECT ...");
$mysqli->query("SELECT ...");
$mysqli->commit();
Я выполнил запрос в MySQL (после того, как с помощью var_dump, чтобы принести его как есть), и выполняется прекрасно, так что я не думаю, что там на самом деле является синтаксической проблемой и что, возможно, одному не разрешено «комбинировать» запросы в одной строке?
Я беспокоюсь, что START TRANSACTION WITH CONSISTENT SNAPSHOT;
имеет дополнительные условия, которые не будут удовлетворены, просто установив autocommit в false.
[This] (http://php.net/manual/en/mysqli.multi-query.php) может помочь. –