在SQL Server中获取帐户“锁定”状态

时间:2010-04-09 12:20:24

标签: sql-server locking status

我想在SQL Server中解锁一个帐户。在解锁之前,我必须检查该帐户是否被锁定。

我想只在帐户被锁定时解锁。

是否有任何SQL查询或存储过程来获取SQL用户的“锁定”状态?

3 个答案:

答案 0 :(得分:6)

代表Alex K发表答案。

SELECT LOGINPROPERTY('loginname','IsLocked')

答案 1 :(得分:5)

你的意思是登录名:拒绝?如果是这样,你可以:

SELECT is_disabled from sys.server_principals WHERE name = @loginname

答案 2 :(得分:0)

列出所有数据库中具有未锁定状态的所有登录名(激活所有数据库上的所有登录名)

SELECT name, is_disabled, LOGINPROPERTY(name, N'isLocked') as is_locked,
LOGINPROPERTY(name, N'LockoutTime') as LockoutTime into #tmp_is_disabled
FROM sys.sql_logins
WHERE LOGINPROPERTY(name, N'isLocked') = 0    
 
select * from #tmp_is_disabled where is_disabled ='false'

~~关于~~ ~~ pektas ~~