Oracle 스토리지 프로세스 - 모든 테이블 삭제

모든 테이블의 저장 프로세스를 삭제합니다.
 
--          ;  
create or replace procedure PROC_DROPTABLE_All
as 
  --  user_tables   tableName   ;
  tableName user_tables.table_name%type;  
  type ty is record(table_name varchar2(30));
  --  ref    ;-   
  type ref_type is ref cursor return ty;
  ref_t ref_type;
  --        ;
  mycount number(10);
  begin
    --    ;
    open ref_t for select table_name from user_tables;
         loop
             --          ,     ;
             fetch ref_t into tableName;
                    SELECT COUNT(*) INTO mycount FROM user_tables WHERE TABLE_NAME = tableName;
                    if mycount>0 then
                       execute immediate 'DROP TABLE '||tableName || ' CASCADE CONSTRAINT ';
                    end if;
             exit when ref_t%notfound;  --  ;
         end loop;
     close ref_t;    
  end;
/

좋은 웹페이지 즐겨찾기