【发布时间】:2018-12-29 03:49:39
【问题描述】:
我的服务器是 Windows 2008 服务器。 PHP 版本 7.2.7 已安装并正在运行。 Sql Server 11(64 位)已安装并且正在运行(有几个 asp.net 应用程序正在运行并且已经在使用该数据库)
我从微软网站下载了 PHP Sql Server Drivers 并将 .dll 文件放在 PHP ext 目录中。
在我的 PHP.ini 中我添加了:extension=php_pdo_sqlsrv_7_nts_x64
在我用来测试我的数据库连接的 .php 文件中:
$SqlServer = "THISSERVER\SQLEXPRESS";
$SqlServerCon = new PDO("sqlsrv:server=$SqlServer;Database=TheDatabase", "DbUName", "DbPassword");
if (!$SqlServerCon) {die('Unable To Connect to Sql Server');}
else
{echo "Connection Successful";}
我得到:
PHP Fatal error: Uncaught PDOException: could not find driver in D:\Inetpub\wwwroot\TechStory2\DBtest.php:7(第 7 行是 $SqlServerCon 行)。
我做错了什么?以及我需要做什么才能连接到 Sql Server?
【问题讨论】:
-
我认为您需要将
.dll放在 ini 中扩展名的末尾。更改后记得重启网络服务器。 -
@delboy1978uk 说了什么。在 Windows 上,我们假设您没有从源代码编译,并且 PDO 扩展 (
php_pdo.dll) 已内置到您的二进制文件中。如果没有,请确保在 SQLSRV 之前加载它。
标签: php sql-server php-extension php-ini