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


DROP USER (Transact-SQL)

Удаляет пользователя из текущей базы данных.

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

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

Синтаксис

DROP USER user_name

Аргументы

  • user_name
    Указывает имя, по которому пользователь идентифицируется в этой базе данных.

Замечания

Пользователи, которые владеют защищаемыми объектами, не могут быть удалены из базы данных. Перед удалением пользователя, который владеет защищаемым объектом, необходимо удалить или сменить владельца защищаемого объекта.

Пользователь guest не может быть удален, однако пользователя guest можно отключить, отменив его разрешение CONNECT с помощью инструкции REVOKE CONNECT FROM GUEST в любой базе данных, кроме master или tempdb.

Предупреждение

Начиная с SQL Server 2005 поведение схем изменилось. В результате программный код, предполагающий, что схемы эквивалентны пользователям базы данных, возможно, не будет более возвращать правильные результаты. Старые представления каталога, включая sysobjects, не должны использоваться в той базе данных, где когда-либо выполнялась любая из следующих инструкций DDL: CREATE SCHEMA, ALTER SCHEMA, DROP SCHEMA, CREATE USER, ALTER USER, DROP USER, CREATE ROLE, ALTER ROLE, DROP ROLE, CREATE APPROLE, ALTER APPROLE, DROP APPROLE, ALTER AUTHORIZATION. В таких базах данных необходимо использовать новые представления каталога. Новые представления каталога учитывают разделение участников и схем, введенное в SQL Server 2005. Дополнительные сведения о представлениях каталогов см. в разделе Представления каталогов (Transact-SQL).

Разрешения

Необходимо разрешение ALTER ANY USER для базы данных.

Примеры

Следующий пример удаляет пользователя базы данных AbolrousHazem из базы данных AdventureWorks2012.

USE AdventureWorks2012;
DROP USER AbolrousHazem;
GO

См. также

Справочник

CREATE USER (Transact-SQL)

ALTER USER (Transact-SQL)

EVENTDATA (Transact-SQL)