删除表

删除表 stmt:

DROP TABLE IF EXISTS schema-name . table-name

DROP TABLE 语句删除使用 CREATE TABLE语句添加的表。指定的名称是表名。删除的表已从数据库架构和磁盘文件中完全删除。该表无法恢复。与该表关联的所有索引和触发器也将被删除。

可选的 IF EXISTS 子句抑制了如果表不存在通常会导致的错误。

如果启用了外键约束,则 DROP TABLE 命令会在从数据库模式中删除表之前执行隐式的DELETE FROM命令。在执行隐式 DELETE FROM 之前,附加到表的任何触发器都会从数据库模式中删除,因此这不会导致任何触发器触发。相比之下,隐式 DELETE FROM 确实会导致任何已配置的 外键操作发生。如果作为 DROP TABLE 命令的一部分执行的隐式 DELETE FROM 违反任何直接外键约束,则会返回错误并且不会删除表。如果隐式 DELETE FROM 导致违反任何延迟的外键约束,并且在提交事务时违规仍然存在,则在提交时返回错误。