2012-06-20 122 views
0

我跟隨羅伯艾倫與ZF2的優秀教程(http://akrabat.com/wp-content/uploads/Getting-Started-with-Zend-Framework-2.pdf )。sqlsrv_prepare錯誤與Microsoft SQL Server 2008和ZF2

我試圖連接到Microsoft SQL Server 2008中,當我做

$this->getDatasTable()->fetchAll() 

,我發現了folloing錯誤:

PHP Warning: sqlsrv_prepare() expects parameter 1 to be resource, null given in C:\inetpub\wwwroot\LinuxWebApp\source\vendor\zendframework\zendframework\library\Zend\Db\Adapter\Driver\Sqlsrv\Statement.php on line 153 

在配置/自動加載/ global.php我有:

return array(
'db' => array(
    'driver' => 'Sqlsrv', 
    'dsn'   => 'sqlsrv:dbname=xxx;hostname=xxx', 
    'username'  => 'xxx', 
    'password'  => 'xxx', 
    'driver_options' => array(
     PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\'' 
    ), 
), 
); 

我在做什麼錯?

謝謝!

回答

0

PDO::MYSQL_ATTR_INIT_COMMAND將不適用於SQL Server。嘗試刪除driver_options部分。

用下一個想法更新:
參數1是sqlsrv資源,所以你可以得到一個測試腳本工作,直接使用PDO Sqlsrv驅動程序?我現在想知道連接是否有問題。

+0

嘿,搶!我更新到ZF2 beta5,刪除'driver_options'部分,我仍然收到相同的錯誤信息。 – Dionysos