1

リモート コンピューターで実行されている SQL SERVER 2008 に PHP を接続する際に問題に直面しています。私はphpバージョン5.4.3とapache 2.2.22を持っています。コンピューターで既に SQL SERVER 2008 を実行しています。wamp\bin\php\php5.4.3\ext フォルダーに次のファイルが含まれています。

  • php_sqlsrv_54_ts.dll
  • php_pdo_sqlsrv_54_ts.dll

次のような単純なコードを実行する場合

$conn = sqlsrv_connect( $serverName, $connectionInfo);

if( $conn )
{
 echo "Connection established.\n";
}
else
{
 echo "Connection could not be established.\n";
 die( print_r( sqlsrv_errors(), true));
}

次のエラーが表示されます:

Connection could not be established. 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
    )
) 

しかし、 Microsoft SQL Server 2012 Native Clientのインストールを求められる理由がわかりません。

phpこのリンクを試しましたが、成功しませんでした。

前もって感謝します。

更新 1:

私は php 5.3.1 をダウンロードし、このチュートリアルに従うと、スクリプトは魅力的に機能します。

4

2 に答える 2

2

要件によると: SQLSRV 拡張機能では、Microsoft SQL Server 2012 Native Client が PHP を実行している同じコンピューターにインストールされている必要があります。

于 2012-11-09T09:27:44.670 に答える
0

ODBC ドライバーをインストールします ( https://www.microsoft.com/en-us/download/details.aspx?id=36434 )。コンピューターにMSSQL Server をインストールしなくても、リモートの MSSQL Server にアクセスできる ようになりました

于 2016-05-04T11:00:19.567 に答える