Я создал логин / пароль для сервера Azure SQL и добавил @ в логин.
Теперь, когда я пытаюсь подключиться к SQL-серверу, он терпит неудачу, потому что он принимает правую часть после @ в качестве имени сервера:

Невозможно открыть сервер "domain.fr", запрошенный логином. Не удалось войти в систему. (Microsoft SQL Server, ошибка: 40532)

screenshot

Кто-нибудь знает, как избежать @ в логине или любом другом решении?

0
Nicolas 4 Янв 2018 в 14:15

2 ответа

Лучший ответ

Это немного сложно, поскольку в базе данных SQL Azure строки после @ распознаются как имя сервера. чтобы он работал, используйте в качестве логина email@domain.fr @xxx .

1
Hello 5 Янв 2018 в 05:34

Как правило, использование специальных символов в именах объектов является плохой практикой (единственное реальное исключение, на мой взгляд, - это логины и пользователи Windows, которые содержат \ из-за того, что они находятся в формате Домен \ Пользователь).

При передаче имен объектов со специальными символами их нужно заключать в кавычки, используя квадратные скобки. Таким образом, имя для входа, которое вы передадите, будет [@Login] (замена login фактическим именем для входа) или [StackOverflow\Larnu].

2
Larnu 4 Янв 2018 в 11:44