您的位置:首页 > 数据库 > Oracle

oracle sql*plus - 删除当前用户的所有对象

2010-10-23 15:43 519 查看
--ctr1.sql

--用于删除当前用户的所有对象(包括约束条件,表空间,视图,函数,包,存储过程,数字序列,数据库链接)

--use for drop all objects in current user;

--删除某个用户下的对象

set heading off;
set feedback off;
spool f:/dropobj.sql;

prompt --Drop constraint
select 'alter table '||table_name||' drop constraint '||constraint_name||' ;'
from user_constraints where constraint_type='R';

prompt --Drop tables
select 'drop table '||table_name ||';' from user_tables;

prompt --Drop view
select 'drop view ' ||view_name||';' from user_views;

prompt --Drop sequence
select 'drop sequence ' ||sequence_name||';' from user_sequences;

prompt --Drop function
select 'drop function ' ||object_name||';'  from user_objects
where object_type='FUNCTION';
prompt --Drop procedure
select 'drop procedure '||object_name||';' from user_objects
where object_type='PROCEDURE';

prompt --Drop package
prompt --Drop package body
select 'drop package '|| object_name||';' from user_objects
where object_type='PACKAGE';
prompt --Drop database link
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;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: