Что такое подготовленное заявление?

StackOverflow https://stackoverflow.com/questions/54955

  •  09-06-2019
  •  | 
  •  

Вопрос

Я вижу кучу строк в файлах .log в каталоге postgres pg_log, которые говорят что-то вроде:

ОШИБКА:подготовленный оператор «pdo_pgsql_stmt_09e097f4» не существует

Что такое подготовленные операторы и какие причины могут привести к отображению этих сообщений об ошибках?

Это было полезно?

Решение

От документация:

Подготовленный оператор-это объект на стороне сервера, который можно использовать для оптимизации производительности.Когда заявление Prepare выполнено, специфическое утверждение анализируется, переписывается и планируется.Когда впоследствии выдается команда выполнения, подготовленный оператор должен быть выполнен только.Таким образом, этапы анализа, переписывания и планирования выполняются только один раз, а не каждый раз, когда утверждение выполняется.

Поискав в сети, я обнаружил, что команда «pdo_pgsql_stmt» связана с каким-то PHP-соединением с вашей базой данных.Может быть эта ссылка может помочь вам найти подходящий список рассылки или систему отслеживания проблем, куда вы можете отправлять сообщения об ошибках?


РЕДАКТИРОВАТЬ:Кажется, я нашел вашу ошибку здесь:

http://bugs.php.net/bug.php?id=37870

Другие советы

Я думаю, это вам поможет:http://jdbc.postgresql.org/documentation/81/server-prepare.html

По сути, это похоже на хранимые процедуры, которые можно предварительно скомпилировать.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top