drop table 테이블명;
drop table if exists 테이블명;
MySQL 에서 테이블을 삭제하려면 DROP TABLE TABLE_NAME 구문을 사용합니다.
DROP TABLE dept;
만약 대상 테이블이 없다면 아래와 같이 '1051 unknown table' 에러가 발생합니다.
[42S02][1051] Unknown table 'mydb.dept'
MySQL 은 IF EXISTS 구문을 지원하므로 아래와 같이 테이블이 존재할 경우 삭제하도록 하면 에러를 방지할 수 있습니다.
DROP TABLE if exists dept;
외래 키(Foreign key)가 있을 때
만약 다른 테이블(emp)에서 foreign key 로 삭제하려는 테이블을 참조하는 등 constraint 가 있을 경우 삭제 되지 않습니다.
Cannot drop table 'dept' referenced by a foreign key constraint 'fk_emp_dept' on table 'emp'.
이경우 참조하는 테이블을 먼저 삭제하는 방법이 있습니다.
DROP TABLE if exists emp;
DROP TABLE if exists dept;
참조 테이블이 계속 사용해야 하면 참조 테이블의 외래 키를 삭제하고 대상 테이블을 삭제하면 됩니다.
ALTER TABLE
empDROP FOREIGN KEYfk_emp_dept;
DROP TABLE dept ;