Поделиться через


sp_droprolemember (Transact-SQL)

Удаляет в текущей базе данных учетную запись безопасности из роли SQL Server.

Важное примечаниеВажно!

В будущей версии Microsoft SQL Server этот компонент будет удален. Избегайте использования этого компонента в новых разработках и запланируйте изменение существующих приложений, в которых он применяется. Используйте вместо этого инструкцию ALTER ROLE.

Применимо для следующих объектов: SQL Server (SQL Server 2008 по текущую версию), База данных SQL Windows Azure (С первоначального выпуска по текущий выпуск).

Значок ссылки на раздел Cинтаксические обозначения в Transact-SQL

Синтаксис

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, а процедура ALTER ROLE — для добавления члена роли.

Разрешения

Необходимо разрешение ALTER на эту роль.

Примеры

В следующем примере производится удаление пользователя JonB из роли Sales.

EXEC sp_droprolemember 'Sales', 'Jonb';

См. также

Справочник

Хранимые процедуры безопасности (Transact-SQL)

Хранимая процедура sp_addrolemember (Transact-SQL)

sp_droprole (Transact-SQL)

sp_dropsrvrolemember (Transact-SQL)

sp_helpuser (Transact-SQL)

Системные хранимые процедуры (Transact-SQL)