В PostgreSQL команда DROP SCHEMA
используется для удаления схемы из базы данных. После удаления схемы все её объекты, включая таблицы, представления и функции, также удаляются.
Синтаксис DROP SCHEMA
DROP SCHEMA [IF EXISTS] имя_схемы [CASCADE | RESTRICT];
IF EXISTS
— предотвращает ошибку, если схема отсутствует.CASCADE
— удаляет схему вместе со всеми объектами внутри неё.RESTRICT
— запрещает удаление, если в схеме есть объекты (по умолчанию).
Удаление пустой схемы
Если схема sales
не содержит объектов, её можно удалить так:
DROP SCHEMA sales;
Удаление схемы, если она существует
Чтобы избежать ошибки, если схема отсутствует, используется IF EXISTS
:
DROP SCHEMA IF EXISTS sales;
Удаление схемы с зависимыми объектами
Если схема содержит таблицы или другие объекты, но её нужно удалить вместе с ними, применяется CASCADE
:
DROP SCHEMA sales CASCADE;
Запрет удаления, если есть объекты
Если схема не должна быть удалена, если в ней есть объекты, используется RESTRICT
:
DROP SCHEMA sales RESTRICT;
Если в схеме sales
есть таблицы или другие объекты, PostgreSQL выдаст ошибку и не выполнит удаление.