2011-08-24 64 views
1

即時信息從本地PHP切換到Zend Framework,並且需要一個腳本,將數據本地信息加載到分開的服務器上的數據庫中。使用Zend Framework和PDO適配器加載數據本地信息

我改變了我的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 = Zend_Db_Table::getDefaultAdapter(); 

和發送使用LOAD DATA LOCAL INFILE到數據庫查詢創建數據庫對象。 結果北京時間以下錯誤

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

我用的是相同的查詢本機由PHP的MySQL的功能,但與client_flag 128連接沒有此客戶端的標誌,我得到了同樣的錯誤。

那麼,我怎麼能用Zend框架和PDO使用Local Infile?

回答

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

應該工作,你不能在application.ini中使用CONSTANTS。 請嘗試 「真」,而不是 「1」

+0

注意:下列值是真值:''''''''''''''''''''1''''''''''''''''''1''''1''''''''''''1' (來自[parse_ini_file](http://php.net/parse_ini_file#refsect1-function.parse-ini-file-notes)) – cmbuckley

相關問題