1050: Table already exists
MySQL의미
생성하려는 테이블이 이미 존재한다. 같은 이름의 테이블이 있어 CREATE TABLE이 실패했다.
원인
기존 테이블을 다시 생성. 스크립트를 두 번 실행. 마이그레이션 재적용. 다른 객체(뷰)가 같은 이름을 사용.
해결 방법
테이블이 없을 때만 생성하도록 IF NOT EXISTS를 사용한다: CREATE TABLE IF NOT EXISTS my_table (...); 정말로 다시 생성하려면 먼저 삭제한다: DROP TABLE IF EXISTS my_table; 기존 테이블을 나열한다: SHOW TABLES; 마이그레이션을 재실행해도 안전하게(멱등하게) 만든다.
같은 데이터베이스의 다른 항목
- 1292Incorrect datetime value / truncated incorrect value
- 1406Data too long for column
- 1071Specified key was too long; max key length is 767 bytes
- 1051Unknown table 'x'
- 1091Can't DROP 'x'; check that column/key exists
- 1093You can't specify target table 'x' for update in FROM clause
- 1305PROCEDURE does not exist