Skip to content

删表不进入回收站

表会被实际删除,以及和表相依赖的索引,约束,触发器,同义词全部删除。

语法格式

sql
DROP TABLE [IF EXISTS] [schema_name.]tab_name [CASCADE CONSTRAINTS | CASCADE | RESTRICT] PURGE
  • schema_name.:可选,模式名。
  • tab_name:被删除的表名称。
  • [CASCADE CONSTRAINTS | CASCADE | RESTRICT]:可选,删除方式。
    • CASCADE CONSTRAINTS:删除表的同时,自动删除所有依赖于该表的外键约束。
    • CASCADE:删除表及所有依赖对象。
    • RESTRICT:如果表有依赖对象(如外键约束、视图等),拒绝删除。
  • PURGE:永久删除该表。

示例

永久删除表后进行恢复,返回错误。

sql
-- 创建表
SQL> CREATE TABLE index_table1(a INT,b VARCHAR,c INT,CONSTRAINT pk_table1 PRIMARY KEY(a));

-- 永久删除表
SQL> DROP TABLE index_table1 PURGE;

-- 恢复表返回错误
SQL> FLASHBACK TABLE index_table1 TO BEFORE DROP;
Error: [E5021] 表或视图INDEX_TABLE1不存在