【问题标题】:Error connecting to db mssql php zend 1.12连接到 db mssql php zend 1.12 时出错
【发布时间】:2014-01-02 13:46:03
【问题描述】:

我在使用 zend 框架 1.12 和 zend studio 连接数据库时遇到问题。 application.ini 中连接数据库的代码如下:

 resources.db.adapter = pdo_mssql

 resources.db.params.host = "IPADDRESS\SQLEXPRESS"
 resources.db.params.username = sa
 resources.db.params.password = XXXXXXXX
 resources.db.params.dbname = namedb
 resources.db.isDefaultTableAdapter = true
 resources.db.params.pdoType = dblib
 resources.db.params.charset= "utf-8"

数据库可以在线使用(我检查过),但我收到以下错误:

 Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[01002] Adaptive Server connection failed (severity 9)

我知道这个错误是一个连接错误(pdo 没有找到 db),我在一个论坛中找到了一个 tutorial 应该有帮助(它使用 zend 框架和相同的库和类型的 db i在 Mac 上使用)。但我认为 pdo 类型是在我的机器的其他地方配置的,因为我在 Abstract.php 中找不到:

 protected $_pdoType = 'dblib';

pdo类型在application.ini中设置,我之前粘贴的代码。日志说错误在这些行中:

 in /usr/local/zend/var/libraries/Zend_Framework_1/1.12.3/library/Zend/Db/Adapter/Pdo/Abstract.php:129 

            $this->_connection = new PDO(
            $dsn,
            $this->_config['username'],
            $this->_config['password'],
            $this->_config['driver_options']
        );

但我无法理解我错过了什么......有什么提示吗?

【问题讨论】:

    标签: php sql-server zend-framework pdo database-connection


    【解决方案1】:

    我认为 rob Allen 的这篇文章很有用,Zf Coonect To MSSQL

    如那里详细描述,您可以使用以下内容,

    resources.db.adapter = "sqlsrv"
    resources.db.host = "host"
    resources.db.dbname = "DatabaseName"
    resources.db.isDefaultTableAdapter = true 
    resources.db.driver_options.ReturnDatesAsStrings = true
    

    希望有帮助

    还有来自zend框架官方文档here的相关DOC。

    【讨论】:

    【解决方案2】:

    尝试以下方法:

    Microsoft SQL Server 数据库连接信息

    db.mssqlServer.adapter          = PDO_MSSQL
    db.mssqlServer.config.pdoType   = dblib
    db.mssqlServer.config.host      = server_ip_or_url
    db.mssqlServer.config.dbname    = database_name
    db.mssqlServer.config.username  = "mssql_user"
    db.mssqlServer.config.password  = "mssql_password"
    db.mssqlServer.config.driver_options.PDO::ATTR_ERRMODE=PDO::ERRMODE_EXCEPTION
    

    【讨论】:

      猜你喜欢
      • 2015-09-07
      • 1970-01-01
      • 2013-03-17
      • 1970-01-01
      • 2019-10-23
      • 2012-01-24
      • 1970-01-01
      • 1970-01-01
      • 2015-11-03
      相关资源
      最近更新 更多