Иллюстрированный самоучитель по PostgreSQL

Управление группами

Удаление группы

Любой суперпользователь может удалять существующие группы командой SQL DROP GROUP. Будьте внимательны при выполнении этой команды, поскольку она необратима и вам не будет предложено подтвердить удаление группы (даже если в ней остаются пользователи). В отличие от команды DROP DATABASE, команда DROP GROUP может выполняться в транзакционном блоке.

Синтаксис команды DROP GROUP:

DROP GROUP группа

Параметр группа определяет имя удаляемой группы. В листинге 10.13 из базы данных booktown удаляется ненужная группа marketing.

Листинг 10.13. Удаление группы.

booktown=# DROP GROUP marketing;
DROP GROUP

Сообщение DROP GROUP означает, что группа успешно удалена. Учтите, что при удалении группы назначенные ей права не уничтожаются, а всего лишь становятся "бестелесными", не связанными с реальным субъектом. Все права объекта базы данных для удаленной группы фактически относятся не к самой группе, а ее системному идентификатору.

Примечание
Случайно удаленную группу можно восстановить. Для этого следует создать новую группу с тем же системным идентификатором, что у удаленной группы. Системный идентификатор назначается ключевым словом SYSID, о котором говорилось в пункте "Создание группы". Если присвоить группе права доступа к таблице и затем удалить эту группу, то права группы для таблицы останутся. Разумеется, в созданную группу нужно будет заново включить пользователей
.

Назначение пользователей в группы

Включение пользователей в группы и удаление их из групп в PostgreSQL выполняется командой SQL ALTER GROUP. Синтаксис команды ALTER GROUP:

ALTER GROUP группа { ADD DROP } USER пользователь […. ]

Параметр группа определяет имя группы, а параметр пользователь – имя включаемого или удаляемого пользователя (в зависимости от присутствия ключевого слова ADD или DROP).

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.