让 PHP Sql Server 驱动程序在 PHP 5.5 中工作


Getting PHP Sql Server Driver working in PHP 5.5

我正在尝试使用在IIS下工作的SQL Server驱动程序获取PHP。 18个月前,我在较小版本的php,驱动程序和Apache上遇到了类似的情况,并且该代码在Windows Server 2003上运行良好。

我正在尝试在我的Windows 7(家庭高级版)虚拟机上设置它,以找出如何做到这一点,然后再尝试在Windows Server 2011上完成相同的工作。

现在,我将再次尝试相同的代码并重置我的开发环境。 这次我使用的是 PHP 5.5,并安装了从可下载的 SQLSERVER31.exe 文件中获取的驱动程序的线程安全版本php_pdo_sqlsrv_55_ts.dll。

在 32 位模式下完成所有这些操作

一旦我尝试构建一个新的PDO,我就会收到以下错误消息

SQLSTATE[IMSSP]:此扩展需要 ODBC Driver 11 for SQL 服务器与 SQL Server 通信。访问以下网址 下载 ODBC 驱动程序 11 for SQL Server for x86: http://go.microsoft.com/fwlink/?LinkId=163712

因此,尽管该链接不直接指向驱动程序,但我最终找到了自己的方式并下载了它,只是因为它无法安装。 但是,我认为这可能是因为我已经安装了适用于 SQL Server 的 ODBC 驱动程序 11。

因此,根据我的"管理工具"部分中的数据源 (ODBC) 应用程序,有两个 SQL Server ODBC 驱动程序

  • SQL Server,版本 6.01.7602.17514 SQLSRV32.DLL,日期 21/11/2010
  • SQL Server 本机客户端 11,版本 2011.110.5058.00 SQLNCLI11.DLL,日期为 15/05/2014

所以我真的不知道该如何从这里开始。

我可以删除驱动程序并重新安装吗? 如果是这样,怎么办?关于如何使其工作的任何其他建议。

我发现了问题的答案。 我没有安装 odbc 驱动程序 - 上面列出的驱动程序不正确。

我下载的 ODBC 驱动程序安装失败的原因不是因为驱动程序已经安装 - 而是因为我下载了 32 位版本,并且它必须是 64 位版本。

安装64位版本后,数据源驱动程序列表中出现了另一个条目,我的测试程序开始工作