由于表空间太多了,磁盘内存不够,打算删几个无用的表空间。结果发生报错
ora-00604:递归sql层1出现错误。
ora-02429:无法删除用于强制唯一/主键的索引。
在网上找了很多方法,其中有说要 先把表和索引的关系解除
执行这条语句
alter table HMZD(表名) drop constraint PK_HMZD(索引名)
结果还是报错。后来找了很久,在这里发现了没有解除感觉的索引,再执行以上代码解除后
--删除空的表空间,但是不包含物理文件
drop tablespace tablespace_name;
--删除非空表空间,但是不包含物理文件
drop tablespace tablespace_name including contents;
--删除空表空间,包含物理文件
drop tablespace tablespace_name including datafiles;
--删除非空表空间,包含物理文件
drop tablespace dxf including contents and datafiles;
--如果其他表空间中的表有外键等约束关联到了本表空间中的表的字段,就要加上CASCADE CONSTRAINTS
drop tablespace ksh including contents and datafiles CASCADE CONSTRAINTS;
用以上代码删除表空间。