适用于: Databricks SQL
Databricks Runtime
删除表,并从文件系统中删除与表关联的目录(如果该表不是 EXTERNAL
表)。 如果该表不存在,则会引发异常。
若要删除表,您必须对该表具有 MANAGE
权限,或者是该表、表所在的架构、目录或元存储的所有者。
对于外部表,仅从元存储架构中删除关联的元数据信息。
引用表的任何外键约束也会被删除。
如果缓存表,该命令将取消缓存表及其所有依赖项。
注意
表在 7 到 30 天内被删除。 Unity 目录支持 UNDROP TABLE
命令在 7 天内恢复已删除的托管表。 7 天后,在定期表维护操作期间,基础数据将被标记为从云租户中删除。
语法
DROP TABLE [ IF EXISTS ] table_name
参数
如果存在
如果已指定,则当表不存在时,不会引发 TABLE_OR_VIEW_NOT_FOUND 错误。
-
要删除的表的名称。 名称不得包含 时态规范或选项规范。 如果找不到表,Azure Databricks 会引发 TABLE_OR_VIEW_NOT_FOUND 错误。
示例
-- Assumes a table named `employeetable` exists.
> DROP TABLE employeetable;
-- Assumes a table named `employeetable` exists in the `userdb` schema
> DROP TABLE userdb.employeetable;
-- Assumes a table named `employeetable` does not exist.
-- Throws TABLE_OR_VIEW_NOT_FOUND
> DROP TABLE employeetable;
Error: TABLE_OR_VIEW_NOT_FOUND
-- Assumes a table named `employeetable` does not exist,Try with IF EXISTS
-- this time it will not throw exception
> DROP TABLE IF EXISTS employeetable;