1051: Unknown table 'x'
MySQL의미
참조한 테이블이 존재하지 않는다. 삭제, 변경 또는 쿼리 중 지정한 이름의 테이블을 찾지 못했다.
원인
테이블 이름 오타. 테이블이 생성된 적 없거나 이미 삭제됨. 잘못된 데이터베이스(스키마) 선택. 대소문자 구분(Linux에서는 테이블 이름이 대소문자를 구분한다). 존재하지 않는 테이블에 DROP TABLE.
해결 방법
기존 테이블을 나열하고(SHOW TABLES;) 올바른 데이터베이스를 선택한다: USE mydb; 테이블 이름과 대소문자를 수정한다. 삭제 시 오류를 피하려면: DROP TABLE IF EXISTS my_table; 다른 스키마에 있다면 schema.table로 한정한다.
같은 데이터베이스의 다른 항목
- 1406Data too long for column
- 1071Specified key was too long; max key length is 767 bytes
- 1050Table already exists
- 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
- 1227Access denied; you need (at least one of) the PRIVILEGE