如何正确连接 symfony 3.3.x doctrine2 和 sql server 2005

How to connect properly symfony 3.3.x doctrine2 and sql server 2005

我正在使用 symfony 3.3.10php5.6.31,我尝试了几次将学说连接到 SQL Server 2005 数据库。我已经安装了使用 sqlsrvpdo_sqlsrv 的驱动程序。这是我的配置文件:

php.ini

extension=php_sqlsrv_56_ts.dll
extension=php_pdo_sqlsrv_56_ts.dll

symfony config.yml

driver: pdo_sqlsrv host: server_addr
port: 1433 dbname: dbname
user: db_user
password: db_p@ssw0rd

这是我的配置,现在当我尝试使用 doctrine 做一些事情时,它会引发以下错误:

使用 pdo_sqlsrv 作为驱动程序

[Doctrine\DBAL\Driver\PDOException]
SQLSTATE[08001]: [Microsoft][ODBC Driver 11 for SQL Server]ODBC Driver 11 f
or SQL Server does not support connections to SQL Server 2000 or earlier ve
rsions.

[PDOException]
SQLSTATE[08001]: [Microsoft][ODBC Driver 11 for SQL Server]ODBC Driver 11 f
or SQL Server does not support connections to SQL Server 2000 or earlier ve
rsions.

使用 sqlsrv 作为驱动程序

[Doctrine\DBAL\Driver\SQLSrv\SQLSrvException]
SQLSTATE [IMSSP, -33]: Invalid value type for option Database was specified
. String type was expected.

我的 phpinfo() 没有问题并且检测到 php_sqlsrvphp_pdo_sqlsrv

已注册 PHP 流 php、文件、glob、数据、http、ftp、zip、compress.zlibcompress.bzip2、https、ftps,sqlsrv,phar

PDO 驱动程序

mysql, odbc, pgsql, sqlite, sqlsrv

提前致谢,抱歉英语不好。

我的SQL服务器版本输出是:

Microsoft SQL Server 2005 - 9.00.3042.00 (Intel X86) 2007 年 2 月 9 日 22:47:07 版权所有 (c) 1988-2005 Microsoft Corporation Enterprise Edition on Windows NT 6.0 (Build 6002: 服务包 2)

我找到了这个 post which makes a reference to this link。现在我使用的是最新版本 (5.1.1)。检查扩展是否正常工作后,我只需配置多个实体管理器,就可以连接到数据库和 execute/fetch 查询。

php.ini

extension=php_pdo_sqlsrv_ts.dll
extension=php_sqlsrv_ts.dll