更新时间:2025-08-04 GMT+08:00
DROP TABLE
功能描述
删除指定的表。
注意事项
- DROP TABLE会强制删除指定的表,删除表后,依赖该表的索引会被删除,而使用到该表的函数和存储过程将无法执行。删除分区表,会同时删除分区表中的所有分区。
- 只有表的所有者、模式所有者或者被授予了表的DROP权限的用户才能执行DROP TABLE,系统管理员默认拥有该权限。要清空指定表中的行但是不删除该表定义,可以使用TRUNCATE或者DELETE。

- DROP对象操作(如DATABASE、USER/ROLE、SCHEMA、TABLE、VIEW等对象)存在数据丢失风险,尤其含带CASCADE级联删除场景,会将关联的对象一并删除,操作需谨慎,操作前需考虑数据备份。
- 更多开发设计规范参见总体开发设计规范。
语法格式
1 2 |
DROP TABLE [ IF EXISTS ] { [schema.]table_name } [, ...] [ CASCADE | RESTRICT ] ; |
参数说明
参数 |
描述 |
取值范围 |
---|---|---|
IF EXISTS |
如果指定的表不存在,则发出一个notice而不是抛出一个错误。 |
- |
schema |
要删除的表所属的模式名称。 |
- |
table_name |
要删除的表名称。 |
已存在的表名称。 |
CASCADE | RESTRICT |
当执行删除操作时,如何处理依赖对象中的相关数据。 |
|
PURGE |
指定Purge参数时,无论回收站特性是否开启,直接删除,不放入回收站。该参数仅9.1.0.200及以上集群版本支持。 |
- |
KEEP ttl HOUR |
对于V3表,回收站特性开启时,设置TTL,物理文件会放入回收站中,后续可以从回收站中恢复,TTL到期之后,后台自动清理回收站中的对象。该参数仅9.1.0.200及以上集群版本支持。
须知:
没有做合理的空间管控,建议在DROP和TRUNCATE频率低业务场景中使用。 |
- |
示例
删除表warehouse_t1。
1
|
DROP TABLE tpcds.warehouse_t1; |