Когда mysqli_multi_query останавливает выполнение?

#php #mysql #sql #mysqli #mysql-error-1064

#php #mysql #sql #mysqli #mysql-ошибка-1064

Вопрос:

Предположил, что у нас есть этот текст SQL с 3 командами MySQL:

 show tables;

some nonesense command which makes error;

show tables;
  

Первый и третий SQL допустимы, второй — нет. Итак, при передаче этого текста SQL в mysqli_multi_query MySQL останавливает выполнение при второй команде (ошибка один) или пытается продолжить до последней команды? Потому что опасно, если эти команды после ошибки полагаются на ошибку.

Ответ №1:

Нет, если один запрос завершается ошибкой, остальные не будут выполнены. Смотрите Этот комментарий в документации для mysqli_multi_query , который проясняет это, а также демонстрирует один из способов проверки на наличие ошибок.

Комментарии:

1. спасибо, Джон, просто потому, что это официально не задокументировано.