跳至主要内容

UNDROP TABLE

取消删除表。

从 ClickHouse 23.3 版本开始,可以在发出 DROP TABLE 语句后的 `database_atomic_delay_before_drop_table_sec` (默认 8 分钟) 内,在原子数据库中 UNDROP 表。已删除的表列在名为 `system.dropped_tables` 的系统表中。

如果您有一个没有 `TO` 子句与已删除表关联的物化视图,则您还必须 UNDROP 该视图的内部表。

提示

另请参阅 DROP TABLE

语法

UNDROP TABLE [db.]name [UUID '<uuid>'] [ON CLUSTER cluster]

示例

CREATE TABLE tab
(
`id` UInt8
)
ENGINE = MergeTree
ORDER BY id;

DROP TABLE tab;

SELECT *
FROM system.dropped_tables
FORMAT Vertical;
Row 1:
──────
index: 0
database: default
table: tab
uuid: aa696a1a-1d70-4e60-a841-4c80827706cc
engine: MergeTree
metadata_dropped_path: /var/lib/clickhouse/metadata_dropped/default.tab.aa696a1a-1d70-4e60-a841-4c80827706cc.sql
table_dropped_time: 2023-04-05 14:12:12

1 row in set. Elapsed: 0.001 sec.
UNDROP TABLE tab;

SELECT *
FROM system.dropped_tables
FORMAT Vertical;

```response
Ok.

0 rows in set. Elapsed: 0.001 sec.
DESCRIBE TABLE tab
FORMAT Vertical;
Row 1:
──────
name: id
type: UInt8
default_type:
default_expression:
comment:
codec_expression:
ttl_expression: