«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Почему MySQL Error Erry 2014: «не может выполнять запросы, в то время как другие беспрепятственные запросы активны»?

Почему MySQL Error Erry 2014: «не может выполнять запросы, в то время как другие беспрепятственные запросы активны»?

Опубликовано в 2025-02-06
Просматривать:860

Why Does MySQL Return Error 2014:

причины MySQL Error 2014: невозможно выполнить запросы, пока другие не несвязанные запросы активны

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

]

подготовленные подготовленные утверждения

pdo :: attr_emulate_preperes Указывают, подготовлены ли подготовленные заявления или выполнено как родные высказывания MySQL. Если установлено на FALSE, использование несоблюренных PHP -запросов может вызвать ошибку 2014. Это связано с тем, что механизм внутреннего кэширования PHP для результатов запроса не обрабатывает несоблюдения запросов. ]

Есть несколько способов разрешить эту ошибку:

использование буферизованных запросов: включение pdo :: mysql_attr_use_buffered_query приводит к выполнению запросов в буфериальном режиме, который автоматически получает все все ряды одновременно. Однако, это может быть интенсивным памятью, если набор результатов большой.

извлечь все строки:
    вызов fetchall () на запросе гарантирует, что все строки получают и результат курсор закрыт , позволяя выполнять последующие запросы без ошибки. Однако это предотвращает извлечение любых оставшихся строк из бессмысленного запроса.
  • ]
  • лучшие практики
  • , чтобы избежать встречи с этой ошибкой, это рекомендуется:
  • . &&&&] Используйте буферированные запросы или fetchall () по умолчанию для беспрепятственных запросов, которые приносят ограниченное количество строк. Составьте ошибку.
  • закройте курсоры, когда вы закончите получение данных, чтобы выпустить ресурсы сервера и предотвратить ошибку. Поддерживает эмулированные подготовленные операторы.

]

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3