Обрезать таблицу
Обрезка позволяет удалить данные в таблице или базе данных, сохраняя их существование. Это легковесная операция, которую невозможно отменить.
Операторы TRUNCATE
TRUNCATE TABLE
Удаляет все данные из таблицы. Когда условие IF EXISTS
опущено, запрос возвращает ошибку, если таблица не существует.
Запрос TRUNCATE
не поддерживается для движков таблиц View, File, URL, Buffer и Null.
Вы можете использовать настройку alter_sync для организации ожидания выполнения действий на репликах.
Вы можете указать, сколько времени (в секундах) ждать неактивные реплики для выполнения запросов TRUNCATE
с помощью настройки replication_wait_for_inactive_replica_timeout.
Если alter_sync
установлен на 2
, и некоторые реплики неактивны более чем на время, указанное в настройке replication_wait_for_inactive_replica_timeout
, будет выброшено исключение UNFINISHED
.
TRUNCATE ALL TABLES
Удаляет все данные из всех таблиц в базе данных.
TRUNCATE DATABASE
Удаляет все таблицы из базы данных, но сохраняет саму базу данных. Когда условие IF EXISTS
опущено, запрос возвращает ошибку, если база данных не существует.
TRUNCATE DATABASE
не поддерживается для Replicated
баз данных. Вместо этого просто выполните DROP
и CREATE
для базы данных.