imp导入前对当前用户清库脚本


--清空当前用户所有表
begin
for i in ( select 'drop table '|| a.tab_name as sqls from (select distinct t.tab_name from (select Lower(table_name) as tab_name from user_tables) t) a ) loop
dbms_output.put_line(i.sqls);
execute immediate i.sqls;
end loop;
end;
/

--清空当前用户视图
begin
for i in ( select 'drop view ' || view_name ||' ' as sqls from user_views ) loop
dbms_output.put_line(i.sqls);
execute immediate i.sqls;
end loop;
end;
/

--清空当前用户函数
begin
for i in ( select 'drop function ' || object_name ||' ' as sqls from user_objects where object_type='FUNCTION' ) loop
dbms_output.put_line(i.sqls);
execute immediate i.sqls;
end loop;
end;
/

--清空当前用户存储过程
begin
for i in ( select 'drop procedure ' || object_name|| ' ' as sqls from user_objects where object_type='PROCEDURE' ) loop
dbms_output.put_line(i.sqls);
execute immediate i.sqls;
end loop;
end;
/

--清空当前用户包
begin
for i in ( select 'drop procedure ' || object_name|| ' ' as sqls from user_objects where object_type='PROCEDURE' ) loop
dbms_output.put_line(i.sqls);
execute immediate i.sqls;
end loop;
end;
/

--清空用户自定义类型对象
begin
for i in ( select 'drop '|| o.OBJECT_TYPE||' ' ||o.OBJECT_NAME || ' force ' as sqls from user_objects o where o.OBJECT_TYPE like 'TYPE' or o.OBJECT_TYPE like 'type' ) loop
    dbms_output.put_line(i.sqls);
execute immediate i.sqls;
end loop;
end;
/

--清空用户自定义序列对象
begin
for i in ( select 'drop '|| o.OBJECT_TYPE||' ' ||o.OBJECT_NAME as sqls from user_objects o where o.OBJECT_TYPE like 'SEQUENCE' or o.OBJECT_TYPE like 'sequence' ) loop
    dbms_output.put_line(i.sqls);
execute immediate i.sqls;
end loop;
end;
/

转载于:https://www.cnblogs.com/skiing886/p/7616329.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值