ORACLE删除某用户下所有对象
2013-10-26 15:50
127 查看
--.sql脚本 --唯一注意的是下面的f:\dropobj.sql 为操作的.sql; --你的电脑没有F盘,请换为D或者E其他存在的盘符 --用于删除当前用户的所有对象 --use for drop all objects in current user; set heading off; set feedback off; spool f:\dropobj.sql; prompt --删除约束条件 select 'alter table '||table_name||' drop constraint '||constraint_name||' ;' from user_constraints where constraint_type='R'; prompt --删除表空间 select 'drop table '||table_name ||';' from user_tables; prompt --删除视图 select 'drop view ' ||view_name||';' from user_views; prompt --删除数字序列 select 'drop sequence ' ||sequence_name||';' from user_sequences; prompt --删除函数 select 'drop function ' ||object_name||';' from user_objects where object_type='FUNCTION'; prompt --删除存储过程 select 'drop procedure '||object_name||';' from user_objects where object_type='PROCEDURE'; prompt --删除包 prompt --删除包内容 select 'drop package '|| object_name||';' from user_objects where object_type='PACKAGE'; prompt --删除数据库链接 select 'drop database link '|| object_name||';' from user_objects where object_type='DATABASE LINK'; spool off; set heading on; set feedback on; @@f:\dropobj.sql; host del f:\dropobj.sql; --done for drop objects in current user; --在SQL*PLUS 将这整段作为.sql导入或者直接复制黏贴,按F5执行,完成。
注释: 1.上面这个语句,在pl/sql里面是放在命令里面执行的。 2.set heading off; 意思就是关闭表头。如果不关闭,写入dropobj.sql文件中就会带有结果集的表头如: 'DROPTABLE'||TABLE_NAME||';' ------------------------------------------ drop table TEACHER; 实际上我们需要的是“drop table TEACHER;”,“'DROPTABLE'||TABLE_NAME||';' ”就是表头。
3.set feedback off; 意思就是关闭回显。如果不关闭,写入dropobj.sql文件中就会带有返回结果集的大小等信息,如:"137 rows selected" 4.spool c:\dropobj.sql; 把结果集写入这个文件。spool off; 结束写入。 5.@@c:\dropobj.sql; 执行这个sql 6.host del c:\dropobj.sql; 删除主机上这文件。 7.CONSTRAINT_TYPE 就是键的类型: Sql代码 1. C (check constraint
on a table) 2. P (primary key) 3. U (unique key) 4. R (referential integrity) 5. V (with check option, on a view) 6. O (with read only, on a view) 8.当执行'drop package ………… '这句时,package body会被同时删除。
相关文章推荐
- Oracle: 删除当前用户的所有对象(表、视图、存储过程、包、javasource,job)
- oracle 导入导出数据库、删除用户以及该用户所有的对象
- oracle 导入导出数据库、删除用户以及该用户所有的对象
- ORACLE删除某用户下所有对象
- Oracle删除指定用户下所有对象
- Oracle: 删除当前用户的所有对象(表、视图、触发器、存储过程、函数)
- ORACLE删除某用户下所有对象
- oracle删除当前用户中所有对象(表,视图,触发器,存储过程,函数)
- [转载]Oracle SQL*PLUS - 删除当前用户的所有对象
- Oracle中删除用户下所有对象
- oracle删除某用户下所有对象
- Oracle基础知识--------------删除oracle当前用户下的所有对象
- ORACLE下删除当前用户下所有对象的SQL
- Oracle删除当前用户的所有对象(表、视图、触发器、存储过程、函数)
- oracle中删除某个用户的所有对象
- Oracle 中如何删除一个用户拥有的所有对象
- Oracle删除用户下的所有对象
- Oracle中删除用户下所有对象的多种方法
- 【Oracle】删除用户下的所有对象
- Oracle删除用户下的所有对象