DROP ROLE
Удаляет роль базы данных.
Синтаксис
DROP ROLE [IF EXISTS] <name> [, ...]
Описание
Команда DROP ROLE удаляет указанные роли.
Для удаления роли суперпользователя вы должны быть суперпользователем.
Для удаления обычных ролей требуется привилегия CREATEROLE.
Роль не может быть удалена, если на нее существуют ссылки в любой базе данных; в этом случае будет выдана ошибка. Перед удалением необходимо удалить все объекты, которыми владеет роль (или переназначить их владельца), а также отозвать все привилегии роли на другие объекты. Для этого могут быть полезны команды REASSIGN OWNED и DROP OWNED.
Удалять членство роли вручную не требуется: DROP ROLE автоматически отзывает членство целевой роли в других ролях и членство других ролей в целевой роли.
Другие роли при этом не удаляются и не изменяются.
Параметры
| Параметр | Описание |
|---|---|
IF EXISTS |
Не выдавать ошибку, если роль не существует. В этом случае выводится уведомление |
name |
Имя удаляемой роли |
Примеры
Удаление ролей sally и bob:
DROP ROLE sally, bob;
Совместимость
Стандарт SQL определяет команду DROP ROLE, но она позволяет удалять только одну роль за раз, и требования к привилегиям отличаются от используемых в Greengage DB.