已安装PDO驱动程序,但连接测试另有说明

时间:2013-06-07 12:57:20

标签: php sql pdo database-connection drivers

我正在尝试使用PDO驱动程序连接到我的数据库,据我所知它们已正确安装。我已将扩展添加到我的php.ini文件中,驱动程序位于ext文件夹中,我下载了Microsoft驱动程序3.0。 PHPinfo()表示启用了pdo_sqlsrv驱动程序。我正在使用带有iis的Windows服务器。我安装了PHP 5.4并使用非线程安全驱动程序。我还能错过什么?

<?php

try{
$dbh = new pdo( 'sqlsrv=websvr\sqlwebdata:1433;dbname=xxxx',
                'xxxx',
                'xxxx',
                array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
die(json_encode(array('outcome' => true)));
}
catch(PDOException $ex){
  print "Error!: " . $ex->getMessage() . "<br/>";
    die();

}

&GT;

1 个答案:

答案 0 :(得分:4)

http://docs.php.net/manual/de/pdo.construct.php说:

PDO :: __ construct()(string $ dsn,...
[...]
通常,DSN包含 PDO驱动程序名称,后跟冒号,后跟PDO驱动程序特定的连接语法

尝试使用(编辑:固定数据库=关键字)

new pdo( 'sqlsrv:Server=websvr\sqlwebdata,1433;Database=xxxx',

另见:http://php.net/ref.pdo-sqlsrv.connection