2009-01-09 60 views
1

我正在寻找最好的方式来检查数据库的登录在SQL Server中存在的最佳途径2005年我目前使用什么是您在SQL Server中的登录的存在,2005年

IF suser_sid('loginname') IS NOT NULL 

但是在某些登录不存在的情况下,suser_sid()会返回一个值。

在SQL 2000年,我们用

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

,但该表中不存在SQL 2005

有一个类似的问题有关checking the existence of Users,这是有益的,但我在寻找的存在登录。

回答

2

对于SQL2005,...

select * from master.sys.syslogins WHERE [name] ='loginname' 
0

syslogins不建议微软。最好使用sys.server_principals

select * from sys.server_principals where name = 'login_name'