sp_dropsrvrolemember (Transact-SQL)

适用范围:SQL Server

从固定服务器角色中删除 SQL Server 登录名、Windows 用户或 Windows 组。

重要

在 SQL Server的未来版本中将删除此功能。 请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。 应改用 ALTER SERVER ROLE

Transact-SQL 语法约定

语法

sp_dropsrvrolemember
    [ @loginame = ] N'loginame'
    [ , [ @rolename = ] N'rolename' ]
[ ; ]

参数

[ @loginame = ] N'loginame'

要从固定服务器角色中删除的登录名。 @loginame为 sysname,无默认值。 @loginame 必须存在。

[ @rolename = ] N'rolename'

服务器角色的名称。 @rolename为 sysname,默认值为 NULL. @rolename 必须是以下值之一:

  • sysadmin
  • securityadmin
  • serveradmin
  • setupadmin
  • processadmin
  • diskadmin
  • dbcreator
  • bulkadmin

返回代码值

0(成功)或 1(失败)。

注解

只能 sp_dropsrvrolemember 用于从固定服务器角色中删除登录名。 用于 sp_droprolemember 从数据库角色中删除成员。

sa无法从任何固定服务器角色中删除登录名。

sp_dropsrvrolemember 无法在用户定义的事务中执行。

权限

需要 sysadmin 固定服务器角色的成员身份,或者同时ALTER ANY LOGIN具有对服务器的权限,以及从中删除成员的角色的成员身份。

示例

以下示例从 sysadmin 固定服务器角色中删除登录JackO名。

EXEC sp_dropsrvrolemember 'JackO', 'sysadmin';