Ошибка входа в систему sqlsrv_connect для пользователя

Я пытаюсь подключиться к базе данных SQL Server с помощью PHP. Я использую WampServer и SQLExpress с его Management Studio. По какой-то причине вызов sqlsrv_connect завершается неудачно. Соединение с SQL Server открыто, но пользователю не удается войти в систему. Это происходит как для аутентификации Windows, так и для аутентификации SQL Server. Я уже переключился на «Режим аутентификации SQL Server и Windows» на вкладке «Безопасность» свойств базы данных. Я также проверил, что удаленные подключения разрешены на вкладке «Подключения». Я могу войти с помощью аутентификации SQL Server с Management Studio, но не с помощью кода PHP. Любая помощь в том, что я, возможно, делаю неправильно, приветствуется.

<?php
$serverName = "STTM-PC\SQLEXPRESS";
$connectionInfo = array("Database"=>"myDatabase","UID"=>"myUsername","PWD"=>"myPassword");
$conn = sqlsrv_connect($serverName, $connectionInfo);

if ($conn) {
echo "Connection Established<br/>";
}
else {
echo "Connection Failed<br/>";
die( print_r( sqlsrv_errors(), true));
}
?>

Распечатывает это

Connection Failed
Array ( [0] => Array ( [0] => 28000 [SQLSTATE] => 28000 [1] => 18456 [code] => 18456 [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Login failed for user 'myUsername'. [message] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Login failed for user 'myUsername'. ) [1] => Array ( [0] => 42000 [SQLSTATE] => 42000 [1] => 4060 [code] => 4060 [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Cannot open database "myDatabase" requested by the login. The login failed. [message] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Cannot open database "myDatabase" requested by the login. The login failed. ) [2] => Array ( [0] => 28000 [SQLSTATE] => 28000 [1] => 18456 [code] => 18456 [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Login failed for user 'myUsername'. [message] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Login failed for user 'myUsername'. ) [3] => Array ( [0] => 42000 [SQLSTATE] => 42000 [1] => 4060 [code] => 4060 [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Cannot open database "myDatabase" requested by the login. The login failed. [message] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Cannot open database "myDatabase" requested by the login. The login failed. ) )

0

Решение

Я понял, что случилось. Я никогда не был пользователем базы данных, и поэтому соединение не было установлено. Чтобы исправить, я вошел в базу данных с помощью Management Studio. Я перешел на вкладку «Безопасность», затем на вкладку «Логины». Я щелкнул правой кнопкой мыши по имени пользователя и выбрал свойства. В разделе «Сопоставление пользователей» я выбрал «myDatabase», чтобы сопоставить ее с этой учетной записью. Теперь связь установлена.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]