1. 程式人生 > >imp導入前對當前用戶清庫腳本

imp導入前對當前用戶清庫腳本

tables 腳本 distinct obj loop pan lec object -s


--清空當前用戶所有表
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;
/

imp導入前對當前用戶清庫腳本