MySQL 특정 데이터베이스의 모든 테이블을 한번에 삭제하는 쿼리 문

· 조회수 11

putty로 shell로 접속해 아래 쿼리문을 복사후 붙여넣기 하는 경우 바로 실행이 되서 에러 문구가 나오게 됩니다.
소스에 보이는 DB명 부분을 미리 삭제하려는 테이블에 해당하는 DB명으로 변경후 붙여넣기 해야 합니다.
phpMyAdmin이 없을 경우나 쓰고 싶지 않을 때 적합한데 일단 DB접속( mysql -u '사용자명' -p)부터 해주셔야 합니다.
 

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;

"역경은 진리로 통하는 으뜸가는 길이다. - 바이런 , 『돈 주앙』"

- 역경, 고난 -

북마크목록