Перейти к основному содержимому
Перейти к основному содержимому

Операторы DROP

Удаляет существующую сущность. Если указано условие IF EXISTS, эти запросы не возвращают ошибку, если сущность не существует. Если указан модификатор SYNC, сущность удаляется без задержки.

DROP DATABASE

Удаляет все таблицы в базе данных db, затем удаляет саму базу данных db.

Синтаксис:

DROP DATABASE [IF EXISTS] db [ON CLUSTER cluster] [SYNC]

DROP TABLE

Удаляет одну или несколько таблиц.

подсказка

Чтобы отменить удаление таблицы, смотрите UNDROP TABLE

Синтаксис:

DROP [TEMPORARY] TABLE [IF EXISTS] [IF EMPTY] [db1.]name_1[, [db2.]name_2, ...] [ON CLUSTER cluster] [SYNC]

Ограничения:

  • Если указано условие IF EMPTY, сервер проверяет пустоту таблицы только на реплике, которая получила запрос.
  • Удаление нескольких таблиц одновременно не является атомарной операцией, т.е. если удаление одной таблицы не удается, последующие таблицы не будут удалены.

DROP DICTIONARY

Удаляет словарь.

Синтаксис:

DROP DICTIONARY [IF EXISTS] [db.]name [SYNC]

DROP USER

Удаляет пользователя.

Синтаксис:

DROP USER [IF EXISTS] name [,...] [ON CLUSTER cluster_name] [FROM access_storage_type]

DROP ROLE

Удаляет роль. Удаленная роль аннулируется для всех сущностей, где она была назначена.

Синтаксис:

DROP ROLE [IF EXISTS] name [,...] [ON CLUSTER cluster_name] [FROM access_storage_type]

DROP ROW POLICY

Удаляет политику строк. Удаленная политика строк аннулируется для всех сущностей, где она была назначена.

Синтаксис:

DROP [ROW] POLICY [IF EXISTS] name [,...] ON [database.]table [,...] [ON CLUSTER cluster_name] [FROM access_storage_type]

DROP QUOTA

Удаляет квоту. Удаленная квота аннулируется для всех сущностей, где она была назначена.

Синтаксис:

DROP QUOTA [IF EXISTS] name [,...] [ON CLUSTER cluster_name] [FROM access_storage_type]

DROP SETTINGS PROFILE

Удаляет профиль настроек. Удаленный профиль настроек аннулируется для всех сущностей, где он был назначен.

Синтаксис:

DROP [SETTINGS] PROFILE [IF EXISTS] name [,...] [ON CLUSTER cluster_name] [FROM access_storage_type]

DROP VIEW

Удаляет представление. Представления также могут быть удалены с помощью команды DROP TABLE, но DROP VIEW проверяет, что [db.]name является представлением.

Синтаксис:

DROP VIEW [IF EXISTS] [db.]name [ON CLUSTER cluster] [SYNC]

DROP FUNCTION

Удаляет пользовательскую функцию, созданную с помощью CREATE FUNCTION. Системные функции не могут быть удалены.

Синтаксис

DROP FUNCTION [IF EXISTS] function_name [on CLUSTER cluster]

Пример

CREATE FUNCTION linear_equation AS (x, k, b) -> k*x + b;
DROP FUNCTION linear_equation;

DROP NAMED COLLECTION

Удаляет именованную коллекцию.

Синтаксис

DROP NAMED COLLECTION [IF EXISTS] name [on CLUSTER cluster]

Пример

CREATE NAMED COLLECTION foobar AS a = '1', b = '2';
DROP NAMED COLLECTION foobar;