我通常将SQL Server与SQL Server Management Studio一起使用。登录时我使用Windows身份验证,不指定用户名/密码。所以我现在使用的用户名/密码与我登录计算机时的用户名/密码相同。我正在尝试通过PHP建立与服务器的连接;但是,我收到了一个错误。谁知道我做错了什么?
代码
$serverName = "MYPCNAME";
$connectionInfo = array( "Database"=>"College", "UID"=>"MYUSERNAME", "PWD"=>"MYPASSWORD");
$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));
}
错误
Connection could not be established.
Array ( [0] => Array ( [0] => 28000 [SQLSTATE] => 28000 [1] => 18456 [code] => 18456 [2] => [Microsoft][SQL Server Native Client 11.0][SQL Server]Login failed for user 'MYUSERNAME'. [message] => [Microsoft][SQL Server Native Client 11.0][SQL Server]Login failed for user 'MYUSERNAME'. ) [1] => Array ( [0] => 28000 [SQLSTATE] => 28000 [1] => 18456 [code] => 18456 [2] => [Microsoft][SQL Server Native Client 11.0][SQL Server]Login failed for user 'MYUSERNAME'. [message] => [Microsoft][SQL Server Native Client 11.0][SQL Server]Login failed for user 'MYUSERNAME'. ) )
答案 0 :(得分:2)
我认为问题出在您的SQL Server配置中。您应该有一个用户使用SQL Server身份验证而不是Windows身份验证。以下是https://support.gearhost.com/KB/a453/adding-users-to-mssql-using-sql-server-management-studio.aspx
的方法您可能还想检查您的SQL Server TCP / IP配置是否可以远程访问:http://blogs.msdn.com/b/walzenbach/archive/2010/04/14/how-to-enable-remote-connections-in-sql-server-2008.aspx
答案 1 :(得分:0)
您应该考虑切换到SQL Server身份验证,这使您可以使用一系列帐户。
您使用的登录信息似乎不正确;我过去使用过SQL Server,在注册过程中你应该(如果我错了,请纠正我)要求输入“sa”的密码
SQLSTATE = 28000 - Review This
告诉我看看这是否为您提供了解决方案?
此外,如果您使用的是Windows身份验证,请查看以下链接:Connect to MSSQL Server Using Windows Authentication
答案 2 :(得分:0)
我认为您无法使用Windows身份验证从PHP连接到SQL,您可能还需要启用SQL身份验证并连接到SA或其他SQL级帐户。