DataBase/Oracle

[Oracle] 모든테이블 한번에 삭제, 테이블 일괄삭제, 테이블 전체삭제

건뱅 2020. 8. 19.
반응형

오라클에서 테이블을 삭제할 일이 필요할때 보통 우리는

 

DROP TABLENAME FROM USER; 

 

와 같이 DROP 문을 실행하여 삭제를 합니다.

 

그러면 삭제할 테이블이 여러개라면 어떡할까요??

 

또는 전체 테이블을 일괄로 삭제해야된다면 어떡할까요?? 

 

안타깝게도 ORACLE DB는 위와같은 명령어가 존재 하지는 않다고합니다.

 

하지만 모든 테이블에 대한 DROP문을 받아올수는 있지요 ㅎㅎ

 

SQL> SELECT 'DROP TABLE "' || TABLE_NAME || '" CASCADE CONSTRAINTS;' FROM user_tables;

 

위의 쿼리를 실행하면

 

DROP TBNAME1 FROM USER;

DROP TBNAME2 FROM USER;

DROP TBNAME3 FROM USER;

DROP TBNAME4 FROM USER;

DROP TBNAME5 FROM USER;

.

.

.

.

 

위와 같이 해당 계정이 가지고 있는 모든 테이블에 대한 DROP문을 가져옵니다.

 

우리는 이쿼리를 복사하여 필요에 맞게 실행하면 되겠습니다.

 

 



참고블로그: https://endorphin0710.tistory.com/33 [Festina Lente]

반응형

댓글