通过PDO ODBC将PHP连接到MSSQL

当我执行此代码时:


print_r(PDO::getAvailableDrivers()); 

它说我有odbc可用的驱动程序。


Array ( [0] => mysql [1] => odbc [2] => sqlite )

但是,当我尝试像这样使用它时:


$handle = new PDO("odbc:Server=dbServerIpAddress,myportnumber;Database=mydatabase", "myusername", 'mypassword');

它什么也没做-没有错误,也根本不起作用。它甚至不会执行到该行!


如何通过PDO和ODBC将PHP连接到此MSSQL数据库?


慕村9548890
浏览 761回答 3
3回答

一只甜甜圈

接受的答案在实际的PHP调用之前都是正确的。正如有人正确评论的那样,它应该调用odbc驱动程序。其次,它不使用在odbc.ini中配置的数据源名称(DSN),但实际上是在创建临时DSN。代替:$pdo = new PDO("odbc:mssql", "$dbuser","$dbpwd");其中,mssql指向odbc.ini中的DSN对象您可以按如下方式创建临时DSN:$pd = new PDO('odbc:DRIVER=FreeTDS;SERVERNAME=mssql;DATABASE=' . $dbName,              $dbuser, $dbpass);其中MSSQL现指服务器对象freetds.conf和freetds的驱动程序对象ODBCINST.INI(这实际上应该是评论,但我没有代表点)。
打开App,查看更多内容
随时随地看视频慕课网APP