ORACLEで現在のユーザーの下にあるすべてのオブジェクトを削除するSQL


ORACLEの下で現在のユーザーの下のすべてのオブジェクトのSQLを削除して、これは他の人のを回転して、しかし、修正と注釈をしました
Sqlコード
  • --ユーザーの下にあるオブジェクト
  • を削除します.
  • set heading off;   
  • set feedback off;   
  • spool c:\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;   
  •   
  • @@c:\dropobj.sql;   
  • host del c:\dropobj.sql;  
  • 
    --          
    set heading off;
    set feedback off;
    spool c:\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;
    
    @@c:\dropobj.sql;
    host del c:\dropobj.sql;
    

    コメント: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コード
  • C (check constraint on a table)    
  • P (primary key)    
  • U (unique key)   
  • R (referential integrity)   
  • V (with check option, on a view)   
  • O (with read only, on a view)  
  • 
    C (check constraint on a table) 
    P (primary key) 
    U (unique key)
    R (referential integrity)
    V (with check option, on a view)
    O (with read only, on a view)
    

    8.「drop package............」という文を実行すると、package bodyは同時に削除されます.