본문 바로가기
프로그래밍 언어/쿼리문 + Oracle + MySQL

[MySQL] DB의 모든 테이블을 삭제하는 쿼리

by 우림 2015. 10. 24.

DB에 이것저것 테스트로 만들어보거나

오픈소스를 설치하면 테이블들이 생성되는데 다 삭제하고 다시 설치하고자 할 때..

DB는 그대로 놔두고 생성된 모든 테이블들을 삭제하고 싶다면 어떻게 해야 할까요?


SET @tables = NULL;
SELECT GROUP_CONCAT(table_schema, '.', table_name) INTO @tables
  FROM information_schema.tables
  WHERE table_schema = 'DB이름 입력'; -- specify DB name here.

SET @tables = CONCAT('DROP TABLE ', @tables);
PREPARE stmt FROM @tables;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;


위 쿼리에서 'DB이름 입력' 부분만 DB명으로 수정해주시고 쿼리 실행하시면 모든 테이블이 삭제됩니다.


댓글