Документы для multi_Query
Скажите:
Возвращает false, если первое оператор не удалось. Чтобы получить последующие ошибки из других утверждений, которые вы должны позвонить в MySQLI_NEXT_RESULT ().
Документы для Next_Result
Скажем:
возвращает True на успех или ложь по ошибкам.
Наконец, пример, размещенный в документах для Multi_Query
Использование возвращаемого значения из Next_Result
, чтобы определить, когда больше нет запросов; например Чтобы остановить цикл:
multi_query($query)) {
do {
/* store first result set */
if ($result = $mysqli->store_result()) {
while ($row = $result->fetch_row()) {
printf("%s\n", $row[0]);
}
$result->free();
}
/* print divider */
if ($mysqli->more_results()) {
printf("-----------------\n");
}
} while ($mysqli->next_result()); // <-- HERE!
}
/* close connection */
$mysqli->close();
?>
Я не знаю, количество предоставленных запросов, и я не знаю ничего о SQL, который я собираюсь выполнить. Поэтому я не могу просто сравнить количество запросов против количества возвращенных результатов. Тем не менее, я хочу отобразить сообщение об ошибке пользователю, если, скажем, третий запрос был сломанным запросом. Но я, кажется, не имею никакого способа сказать, если Unlight_Result
не удалось, потому что не было больше запросов для выполнения, или если это потому, что в синтаксисе SQL Syntax
Как я могу проверить все запросы на ошибки?