kpa6uu
@kpa6uu
Программист Талибана [Пыхерский Алибаба]

Можно ли использовать несколько подготовленных запросов?

Пытаюсь использовать два подготовленных запроса $mysqli->prepare для оптимизации работы с базой.
Вываливается ошибка:

Commands out of sync; you can't run this command now

Возможно ли использование двух подготовленных запросов, или максимум один?
  • Вопрос задан
  • 486 просмотров
Решения вопроса 2
@IceJOKER
Web/Android developer
Выполнил запрос - закрыл, подготовил другой - выполнил - закрыл и так далее.
Все равно ведь последовательно выполняются
Ответ написан
Простое гугление: https://www.google.ru/search?q=%22Commands+out+of+... первой же ссылкой приводит нас к ответу: ошибка выпадает от того, что "клиент пытается выполнить два возвращающих данные запроса без обращения к use_result() либо store_result() в промежутке между ними".

Второй результат поиска даёт более подробный ответ: https://habrahabr.ru/post/21326/

Вообще, во избежание странных сайд-эффектов, я бы очень не советовал запускать новое подготовленное выражение без закрытия текущего. Т.е. сначала полностью выполняем одно подготовленный запрос, закрываем его, затем создаём новый.

Как вариант, можно открыть несколько соединений к мускулю.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы