从Doctrine/Symfony2连接到MSSQL

问题描述:

我想从Symfony 2中的Doctrine连接到Microsoft SQL Server Express 2016.我正在使用IIS服务器。目前,这就是我在我的parameters.yaml:从Doctrine/Symfony2连接到MSSQL

parameters: 
    database_driver: pdo_sqlsrv 
    database_host: localhost\SQLExpress16 
    database_port: 1433 
    database_name: EvolutionWebShop 
    database_user: sa 
    database_password: **PASS** 

但是当我尝试运行命令php bin/console doctrine:database:create我得到的错误信息:

SQLSTATE[08001]: [Microsoft][ODBC Driver 13 for SQL Server]TCP Provider: No connection could be made because the target machine actively refused it.

我确信,我的防火墙不阻止端口1433,并且我的SQL Server实例正在接受TCP/IP连接。

TCP/IP Settings

我也运行下面的测试脚本,只是为了确保我可以肯定地从PHP连接:

<?php 
try{ 
$conn = new PDO("sqlsrv:server=localhost\\SQLExpress16; Database=WebShopTest", "sa", "**PASS**"); 
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
} 
catch(Exception $e) 
{ 
die(print_r($e->getMessage())); 

} 
print "Success"; 
?> 

该文档确实提到了微软SQL,但我不能找到任何具体的例子。有没有人设法得到这个工作?

本章是所有的学说ORM,其目的是让你映射 对象到关系数据库(如MySQL和PostgreSQL或 微软SQL)

我觉得这做与你的体系结构不同,它在32位上工作,但不在64上。虽然odbc 11应该能够创建32位的数据源。也许某些方面正在寻找具体的32位版本来接受请求并传递它,但是它找不到它?

我仍然有这个问题,我正在寻找一个答案,但最快的方法是只去32位的一切。