1

我有一台运行 Windows 7 Professional、MSSQL 2008 R2 和 IIS 7.5 的笔记本电脑。该系统已成功运行我在 c# 和 php 中的所有应用程序。现在我想在第二台装有 Windows 7 Ultimate 的笔记本电脑上传输我的所有文件和应用程序。但由于某种原因,即使 phpinfo()显示已安装 sqlsrv并且我使用完全相同的代码只是更改数据库的连接字符串,我也无法成功连接到我的数据库。

我有 MSSQL management Studio v 10.50.2500
IIS v 7.5.7600.16385
PHP v 5.5.3
SQLSRV Driver for php 5.5(它不是官方的 MS 版本,但它很受欢迎,可以在我以前的笔记本电脑上使用)

我收到如下错误:


    Array (
    [0] => Array (
                 [0] => IMSSP [SQLSTATE] => IMSSP 
                      [1] => -49 [code] => -49 
                      [2] => This extension requires the Microsoft SQL Server 2012 Native Client. Access the following URL to download the Microsoft SQL Server 2012 Native Client ODBC driver for x86: http://go.microsoft.com/fwlink/?LinkId=163712 
                      [message] => This extension requires the Microsoft SQL Server 2012 Native Client. Access the following URL to download the Microsoft SQL Server 2012 Native Client ODBC driver for x86: http://go.microsoft.com/fwlink/?LinkId=163712 
                       ) 
          [1] => Array (
                       [0] => IM002 [SQLSTATE] => IM002 
                       [1] => 0 [code] => 0 
                       [2] => [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified 
                       [message] => [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified 
                       )
          )

我的 PHP 代码如下(我知道它可以在第一台笔记本电脑上运行):


    `$serverName = "DELL-PC"; //serverName\instanceName`
    ``
    `$connectionInfo = array( "Database"=>"amlTest");`
    `$conn = sqlsrv_connect( $serverName, $connectionInfo);`

我只是无法弄清楚问题是什么或我错过了什么?我真的需要这个工作!并且花了太多时间重新安装我所有的软件并尝试所有的 php 版本。
我希望这不是因为 Windows 版本的差异

另外,对不起,如果我在格式化我的问题时犯了任何错误,因为这是我的第一篇文章。

4

1 回答 1

1

您是否安装了功能包?

http://microsoft.com/en-us/download/details.aspx?id=29065

错误提示告诉我们,您需要 2012 版的 MS SQL Server 才能正常工作。还要确保您的服务器权限设置正确。

于 2013-10-03T14:01:18.437 回答