使用 SQL Server 驱动程序通过 PDO 连接到 SQL Server

2022-08-30 13:49:15

我正在尝试使用PDO和Microsoft提供的驱动程序连接到现有的SQL Server数据库。

我已经看到使用odbc,dblib,mssql等的示例,但是我相信这些驱动程序的连接字符串应该使用“sqlsrv”?

有没有关于如何正确做到这一点的好例子?如果我应该通过其他方法执行此操作,请告诉我。谢谢!


答案 1

关于PDO最好的部分是,访问任何数据库都非常容易。如果您已经安装了这些驱动程序,您应该能够执行以下操作:

$db = new PDO("sqlsrv:Server=YouAddress;Database=YourDatabase", "Username", "Password");

答案 2

请注意,根据我的经验以及其他(PHP - 为什么新的SQLSRV驱动程序比旧的mssql驱动程序慢?)使用PDO_SQLSRV比通过PDO_ODBC慢得多。

如果要使用更快的PDO_ODBC可以使用:

//use any of these or check exact MSSQL ODBC drivername in "ODBC Data Source Administrator"
$mssqldriver = '{SQL Server}'; 
$mssqldriver = '{SQL Server Native Client 11.0}';
$mssqldriver = '{ODBC Driver 11 for SQL Server}';

$hostname='127.0.0.1';
$dbname='test';
$username='user';
$password='pw';
$dbDB = new PDO("odbc:Driver=$mssqldriver;Server=$hostname;Database=$dbname", $username, $password);

推荐