Oracle 删除用户、用户数据库数据、表空间的过程

时间:2021-02-19 08:39:37

1. 删除用户

如果要删除的用户当前没有连接,则可以直接用下面语句删除;
如果要删除的用户当前存在连接,转到 Oracle删除当前连接用户

 /* CASCADE 的意思是将用户的数据库数据一并删除,并没有删除相应的**表空间**!*/
drop user user_name CASCADE;

2. 删除表空间

 /*查询所有表空间物理位置*/
select t1.name,t2.name from v$tablespace t1, v$datafile t2 where t1.ts# = t2.ts#;
 /*删除空的表空间,但是不包含物理文件*/
alter tablespace tablespace_name offline;
drop tablespace tablespace_name;
 /*删除非空表空间,但是不包含物理文件*/
alter tablespace tablespace_name offline;
drop tablespace tablespace_name including contents;
 /*删除空表空间,包含物理文件*/
alter tablespace tablespace_name offline;
drop tablespace tablespace_name including datafiles;
 /*删除非空表空间,包含物理文件*/
alter tablespace tablespace_name offline;
drop tablespace tablespace_name including contents and datafiles;
 /*如果其他表空间中的表有外键等约束关联到了本表空间中的表的字段,就要加上CASCADE CONSTRAINTS*/
drop tablespace tablespace_name including contents and datafiles CASCADE CONSTRAINTS;