sp_revokedbaccess (Transact-SQL)
适用于:SQL Server
从当前数据库中删除数据库用户。
重要
在 SQL Server的未来版本中将删除此功能。 请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。 请改用 DROP USER 。
语法
sp_revokedbaccess [ @name_in_db = ] 'name'
参数
[ @name_in_db = ] 'name'
要删除的数据库用户的名称。 name 是一个 没有默认值的 sysname 。 name 可以是服务器登录名、Windows 登录名或 Windows 组的名称,并且必须存在于当前数据库中。 当您指定 Windows 登录或 Windows 组时,请指定其在数据库中所使用的名称。
返回代码值
0(成功)或 1(失败)
注解
删除数据库用户时,依赖于该用户的权限和别名也会删除。
sp_revokedbaccess只能从当前数据库中删除数据库用户。 删除在当前数据库中拥有对象的数据库用户之前,您必须转移对象的所有权,或者将这些对象从数据库中删除。 有关详细信息,请参阅 ALTER AUTHORIZATION (Transact-SQL)。
不能在用户定义的事务中执行sp_revokedbaccess 。
权限
需要对数据库具有 ALTER ANY USER 权限。
示例
以下示例从当前数据库中删除映射到 Edmonds\LolanSo
的数据库用户。
EXEC sp_revokedbaccess 'Edmonds\LolanSo';
GO
另请参阅
安全存储过程 (Transact-SQL)
系统存储过程 (Transact-SQL)
DROP USER (Transact-SQL)
ALTER AUTHORIZATION (Transact-SQL)