3

Windows 認証を使用して会社の MSSQL サーバーへの接続を確立しようとしていますが、ログイン ID の代わりにコンピューター名をログインとして使用しようとして失敗します。MS SQL Server Management でログインすると、Windows 認証は正常に機能しますが、次の PHP コードでは機能しません。

<?php
// Server in the this format: <computer>\<instance name> or 
// <server>,<port> when using a non default port number
$serverName = "xxx";
$connectionInfo = array( "Database"=>"xxx");

/* Connect using Windows Authentication. */
$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));
}

// 
?>

私が得る印刷物は次のとおりです。

[Microsoft][SQL Server Native Client 11.0][SQL Server]ユーザー 'xxx\T2002197$' のログインに失敗しました。) )

T2002197 は私のコンピューター名であり、ログイン ID ではないため、もちろん失敗します。どうすればこれを解決できますか? WAMPを使用しています。一部の情報を編集し、「xxx」に置き換えました

4

2 に答える 2

7

ああ問題は解決しました!WAMPサービス(Windowsでservice.mscを開く)の設定を変更し、サービスが正しいアカウントにログオンしていることを確認しました。今は動作します。

于 2012-12-05T10:06:03.780 に答える
0

マニュアルには、デフォルトでは、接続は SQL Server 認証ではなく Windows 認証を使用していると書かれています。

これを回避するには、データに uid および pwd オプションを指定する必要があります$connectionInfo

マニュアルを参照してください。

http://php.net/sqlsrv_connect

http://msdn.microsoft.com/en-us/library/ff628167.aspx

于 2012-12-05T09:53:14.490 に答える