我一直在尝试使用PHP中的PDO连接到SQL Server 2008R2数据库,使用以下语法:
$conn = new PDO('sqlsrv:Server=xxxxxx;Database=xxxxx', 'xxxxx', 'xxxxx');
但每次,我尝试运行查询,我得到“异常'PDOException',消息'SQLSTATE [08001]:[Microsoft] [SQL Server Native Client 11.0]命名管道提供程序:无法打开连接到SQL Server [2]。'“
但是当我尝试使用
时$serverName = "xxxxx";
$connectionInfo = array( "UID"=>"xxxx",
"PWD"=>"xxxx",
"Database"=>"xxxxx");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
查询成功。
我的PHPinfo()显示在PDO驱动程序中启用了sqlsrv,并且sqlsrv_connect正在运行的事实似乎表明它不是防火墙或端口打开问题。在这两种情况下,用户名和密码都是相同的。
任何人都可以帮忙建议我应该在哪些方面让PDO正常工作,因为我更愿意这样做以保持一致性吗?
答案 0 :(得分:0)
AAAARGHH,这是我的PDO语句中的语法错误。将所有内容更改为小写并且有效。对不起,StackOverflow!