Поддерживать подготовленные операторы на стороне сервера с PDO?

Учитывая что-то вроде

DB()->prepare("SELECT * FROM mysql.general_log WHERE user_host LIKE ?");

$statement->execute( array('%console%') );

foreach($statement as $record){
    var_dump($record);
}

Contents of general_log is

*************************** 1. row ***************************
event_time: 2011-04-20 14:27:59
user_host: REDACTED[REDACTED] @ REDACTED [192.168.56.101]
thread_id: 30
server_id: 0
command_type: Connect
argument: REDACTED@REDACTED on REDACTED
*************************** 2. row ***************************
event_time: 2011-04-20 14:27:59
user_host: REDACTED[REDACTED] @ REDACTED [192.168.56.101]
thread_id: 30
server_id: 0
command_type: Query
argument: SELECT * FROM mysql.general_log WHERE user_host LIKE '%console%'

Я работаю внутри мерзкого фреймворка (без модульных тестов, без документации, без ryhme или причины), так что возможно, что где-то кто-то явно отключены подготовленные операторы MySQL, заставляющие PDO использовать режим эмуляции ... или это ожидаемое поведение?

PHP - это Версия PHP 5.2.10-2ubuntu6 Драйвер PDO для MySQL, версия клиентской библиотеки 5.1.41

Обновление: PDO () сконструирован со следующими атрибутами

PDO::ATTR_PERSISTENT => false
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true

Я просмотрел документацию PDO, но, к сожалению, там нет упоминания о флаге, подобном тому, о котором написано в , этом аналогичном вопросе

]

6
задан Community 23 May 2017 в 10:33
поделиться