sp_droprolemember (Transact-SQL)
从当前数据库的 SQL Server 角色中删除安全帐户。
语法
sp_droprolemember [ @rolename = ] 'role' ,
[ @membername = ] 'security_account'
参数
[ @rolename = ] 'role'
将从中删除成员的角色的名称。role 的数据类型为 sysname,没有默认值。role 必须存在于当前数据库中。[ @membername = ] 'security_account'
将从角色中删除的安全帐户的名称。security_account 的数据类型为 sysname,无默认值。security_account 可以是数据库用户、其他数据库角色、Windows 登录名或 Windows 组。security_account 必须存在于当前数据库中。
返回代码值
0(成功)或 1(失败)
注释
sp_droprolemember 通过从 sysmembers 表中删除行来删除数据库角色的成员。删除某一角色的成员后,该成员将失去作为该角色的成员身份所拥有的任何权限。
若要删除固定服务器角色的用户,请使用 sp_dropsrvrolemember。不能删除 public 角色的用户,也不能从任何角色中删除 dbo。
可以使用 sp_helpuser 查看 SQL Server 角色的成员,还可以使用 sp_addrolemember 为角色添加成员。
在用户定义事务内不能执行 sp_droprolemember。
权限
需要对角色具有 ALTER 权限。
示例
以下示例将删除角色 Sales 中的用户 JonB。
EXEC sp_droprolemember 'Sales', 'Jonb'