Каков наилучший способ проверить наличие входа в SQL Server 2005 - PullRequest
1 голос
/ 10 января 2009

Я ищу лучший способ проверить, существует ли логин базы данных в SQL Server 2005. В настоящее время я использую

IF suser_sid('loginname') IS NOT NULL 

но suser_sid () возвращает значение в некоторых случаях, когда логин не существует.

В SQL 2000 мы используем

SELECT * FROM [Master].[dbo].[sysxlogins] WHERE [name] ='loginname'

но эта таблица не существует в SQL 2005.

Существует аналогичный вопрос о проверке существования пользователей , что полезно, но я ищу существование логинов.

Ответы [ 2 ]

2 голосов
/ 10 января 2009

Для sql2005 ...

select * from master.sys.syslogins WHERE [name] ='loginname'
0 голосов
/ 22 апреля 2012

syslogins не рекомендуется Microsoft. Лучше использовать sys.server_principals.

select * from sys.server_principals where name = 'login_name'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...