Загрузка данных локального файла с Zend Framework и адаптером PDO - PullRequest
1 голос
/ 24 августа 2011

Я переключаюсь с нативного PHP на Zend Framework и нужен скрипт, выполняющий Загрузка данных Local Infile в базу данных на отдельном сервере.

Я изменяю свой application.ini на

resources.db.adapter = "Pdo_Mysql"
resources.db.params.host ="xxx.xxx.xxx.xxx" 
resources.db.params.username = "yyyyyyy"
resources.db.params.password = "zzzzzzz"
resources.db.params.dbname = "xyxyxyxy"
resources.db.params.charset = utf8
resources.db.params.driver_options.PDO::MYSQL_ATTR_LOCAL_INFILE=1;
resources.db.isDefaultTableAdapter = true

и пытается

resources.db.params.driver_options.1001=1;

тоже.

Я создаю объект db с помощью

$db = Zend_Db_Table::getDefaultAdapter();

и отправка запроса с использованием команды «Загрузить данные локального файла» в базу данных. Результатом является следующая ошибка

Message: SQLSTATE[42000]: Syntax error or access violation: 1148 The used command is not allowed with this MySQL version 

Я использую тот же запрос, родной для функций php mysql, но соединяясь с client_flag 128. Без этого флага клиента я получаю ту же ошибку.

Итак, как я могу использовать Local Infile с Zend Framework и PDO?

Ответы [ 2 ]

1 голос
/ 26 августа 2011
resources.db.params.driver_options.1001 = true;

должно работать, вы не можете использовать CONSTANTS в application.ini.Пожалуйста, попробуйте "true" вместо "1"

0 голосов
/ 02 августа 2013

Я пытаюсь выследить то же самое .. Я пытался добавить

[mysql] local-infile

[mysqld] local-infile

, который долженУстранить проблему в Ubuntu 12.04, согласно мнению некоторых пользователей (но не для меня), есть также ошибка php, но она должна быть исправлена ​​давно: https://bugs.php.net/bug.php?id=54158

Чтение этого поста: http://dev.mysql.com/doc/refman/5.1/en/load-data-local.html#c3237 он утверждает, что это можно исправить, перекомпилировав, но я не пробовал.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...