CLEAR USER
深夜、ORACLEのDBをIMPしていて通信チャネルが切断され、愕然とする。
IGNOREで再度IMPしたら一意制約違反が大量発生して遅いことは明白。
かといってDROP USERも、領域をリリースするのが遅い。
しゃあないから8年ぶりくらいにSQL*PLUS用のスクリプトを書いてみた・・・あれ?見出しの消し方がわからん・・・
で、ユーザーのオブジェクトを全てドロップするスクリプトを書いたのでmemo。
昔おなじ機能のsqlスクリプトを作ったけど、もう使わんだろうと消しちゃったんだよなぁ。
---------------------------------
set linesize 1000
set pagesize 0
set termout off
set trimspool on
set feedback off
set echo off
set heading off
spool C:\sql\clearuser.sql
select 'TRUNCATE TABLE ',table_name,' DROP STORAGE;' from user_tables;
select 'DROP ',object_type,substr(object_name,1,25),';' from user_objects where object_type not in ('TABLE','INDEX');
spool off
@@C:\sql\clearuser.sql
---------------------------------
でも言うほど早くはないな・・・orz
| 固定リンク
この記事へのコメントは終了しました。
コメント