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

Заявление DETACH

Заставляет сервер "забыть" о существовании таблицы, материализованного представления, словаря или базы данных.

Синтаксис

Отключение не удаляет данные или метаданные таблицы, материализованного представления, словаря или базы данных. Если сущность не была отключена PERMANENTLY, при следующем запуске сервера сервер прочитает метаданные и снова вспомнит таблицу/представление/словарь/базу данных. Если сущность была отключена PERMANENTLY, автоматического вспомнения не будет.

Независимо от того, была ли таблица, словарь или база данных отключены навсегда или нет, в обоих случаях вы можете повторно подключить их, используя запрос ATTACH. Системные таблицы журналов также могут быть повторно подключены (например, query_log, text_log и т.д.). Другие системные таблицы не могут быть повторно подключены. При следующем запуске сервера сервер снова вспомнит эти таблицы.

ATTACH MATERIALIZED VIEW не работает с коротким синтаксисом (без SELECT), но вы можете подключить его с помощью запроса ATTACH TABLE.

Обратите внимание, что вы не можете навсегда отключить таблицу, которая уже отключена (временно). Но вы можете снова подключить её, а затем отключить навсегда снова.

Также вы не можете DROP отключенную таблицу или CREATE TABLE с тем же именем, что и отключенная навсегда, или заменить её другой таблицей с помощью запроса RENAME TABLE.

Модификатор SYNC выполняет действие без задержки.

Пример

Создание таблицы:

Запрос:

Результат:

Отключение таблицы:

Запрос:

Результат:

примечание

В ClickHouse Cloud пользователи должны использовать условие PERMANENTLY, например, DETACH TABLE <table> PERMANENTLY. Если это условие не используется, таблицы будут повторно подключены при перезапуске кластера, например, во время обновлений.

Смотрите Также