DROP TABLE
DROP TABLE — удалить таблицу
Синтаксис
DROP TABLE [ IF EXISTS ] имя
[, ...] [ CASCADE | RESTRICT ]
Описание
DROP TABLE
удаляет таблицы из базы данных. Удалить таблицу может только её владелец, владелец схемы или суперпользователь. Чтобы опустошить таблицу, не удаляя её саму, вместо этой команды следует использовать DELETE
или TRUNCATE
.
DROP TABLE
всегда удаляет все индексы, правила, триггеры и ограничения, существующие в целевой таблице. Однако чтобы удалить таблицу, на которую ссылается представление или ограничение внешнего ключа в другой таблице, необходимо дополнительно указать CASCADE
. (С указанием CASCADE
зависимое представление удаляется полностью, тогда как в случае с ограничением внешнего ключа удаляется именно это ограничение, а не вся таблица, к которой оно относится.)
Параметры
IF EXISTS
Не считать ошибкой, если таблица не существует. В этом случае будет выдано замечание.
имя
Имя (возможно, дополненное схемой) таблицы, подлежащей удалению.
CASCADE
Автоматически удалять объекты, зависящие от данной таблицы (например, представления), и, в свою очередь, все зависящие от них объекты (см. Раздел 5.14).
RESTRICT
Отказать в удалении таблицы, если от неё зависят какие-либо объекты. Это поведение по умолчанию.
Примеры
Удаление таблиц films
и distributors
:
DROP TABLE films, distributors;
Совместимость
Эта команда соответствует стандарту SQL, но возможность удалять в одной команде несколько таблиц и указание IF EXISTS
являются расширениями Postgres Pro.