更新时间:2024-04-29 GMT+08:00

DROP删除表

此章节主要介绍ClickHouse删除表的SQL基本语法和使用说明。

基本语法

DROP [TEMPORARY] TABLE [IF EXISTS] [database_name.]name [ON CLUSTER cluster] [SYNC]

示例:

  • 删除表 t1。
    drop table t1 SYNC;
    • 在删除复制表时,因为复制表需要在Zookeeper上建立一个路径,存放相关数据。ClickHouse默认的库引擎是原子数据库引擎,删除Atomic数据库中的表后,它不会立即删除,而是会在24小时后删除。在删除表时,加上SYNC字段,即可解决该问题,例如:drop table t1 SYNC;
    • 删除本地表和分布式表,则不会出现该问题,可不带SYNC字段,例如:drop table t1;
    • 如果建表语句中包含了“ON CLUSTER ClickHouse集群名”,删除表命令:
      drop table 表名 ON CLUSTER default_cluster;
    • 如果建表语句不包含“ON CLUSTER ClickHouse集群名”,删除表命令:
      drop table 表名;
    • 删除数据表前,需确认此数据表是否应用中,以免引起不必要的麻烦。删除数据表后可在24小时内恢复,超过24小时无法恢复。恢复命令如下:
      set allow_experimental_undrop_table_query = 1;
      UNDROP TABLE 数据表名;