【发布时间】:2016-09-30 12:34:04
【问题描述】:
我正在尝试使用 MSSQL 在我的 PC 上运行 PHP 开发应用程序,这是我第一次这样做。我已经在我的 PC 上配置了 XAMPP 并启动了 Apache
我做的步骤:
已下载sqlsrv32.exe
因为我的 PHP 是
PHP 版本 5.6.20
所以我复制了
extension=php_sqlsrv_56_ts.dll 和
扩展=php_pdo_sqlsrv_56_ts.dll
到我的分机文件夹 我检查了 php.ini 我的扩展文件夹是 extension_dir="C:\xampp\php\ext"
我也有 phpinfo()
启用 sqlsrv 支持
指令 本地价值 主价值
sqlsrv.ClientBufferMaxKBSize 10240 10240
sqlsrv.LogSeverity 0 0
sqlsrv.LogSubsystems 0 0
sqlsrv.WarningsReturnAsErrors On On
这意味着它已经安装,我的 database.php 文件有以下代码:
$serverName = "KASHIF\\SQLEXPRESS"; //serverName\instanceName
$connectionInfo = array( "Database"=>"RMS Delivery");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn ) {
echo "Connection established.<br />";
}else{
echo "Connection could not be established.<br />";
die( print_r( sqlsrv_errors(), true));
}
但是,当我在浏览器上打开我的应用程序时,它会显示:
无法建立连接。 Array ( [0] => Array ( [0] => IMSSP [SQLSTATE] => IMSSP [1] => -49 [code] => -49 [2] => 此扩展需要 Microsoft ODBC Driver 11 for SQL服务器。访问以下 URL 以下载适用于 x86 的 SQL Server 的 ODBC 驱动程序 11:http://go.microsoft.com/fwlink/?LinkId=163712 [message] => 此扩展需要适用于 SQL Server 的 Microsoft ODBC 驱动程序 11。访问以下 URL 以下载适用于 SQL 的 ODBC 驱动程序 11 x86 服务器:http://go.microsoft.com/fwlink/?LinkId=163712) [1] => Array ([0] => IM002 [SQLSTATE] => IM002 [1] => 0 [code] => 0 [2] => [Microsoft][ODBC Driver管理器] 未找到数据源名称且未指定默认驱动程序 [消息] => [Microsoft][ODBC 驱动程序管理器] 未找到数据源名称且未指定默认驱动程序))
然后我下载了 ODBC Driver 11 for SQL Server ,安装时说:
该产品安装失败,因为该操作系统不支持该产品。
我的电脑上已经安装了带有 Management Studio 的 SQL SERVER 2012。
所以请告诉我我要离开什么或者我做错了什么。
谢谢
【问题讨论】:
-
你想如何连接你的 mssql 服务器?使用sql驱动还是使用pdo驱动?你已经配置了它们。以及您使用的是哪个操作系统?
-
我认为 XAMPP 将需要非线程安全的 DLL
-
请记住 ODBC 驱动程序提供了从 Windows 到 Microsoft SQL Server 的本机连接,因此除了 php sql 驱动程序之外,您还需要它。安装后,尝试下载 Microsoft Drivers 3.0 for PHP(我使用 Windows 10、SQL Server 2012 和
php_pdo_sqlsrv_53没有问题) -
@Archish 我正在使用 WIN8,我没有偏好请建议 sql 驱动程序或使用 pdo 驱动程序哪个更好。我应该删除一个并尝试
-
@NachoM。你在说 sqlsrv32.exe 那么我已经这样做了。
标签: php sql-server windows-8 xampp