테이블에 컬럼을 삽입하려고 보니, Incorrect table definition; there can be only one auto column and it must be defined as a key 와 같은 에러가 발생하였다.
왜 이런 에러가 발생하였을까? 원인은 아래와 같다.
- PK가 2개 잡혀 있었음
좀 더 찾아보니 auto_column으로 설정된 컬럼이 KEY가 아니라서 위와 같은 오류가 발생할 수도 있다고 한다.
MySQL에서는 PK에 auto_column을 설정하는 것이 일반적이니,,
(추가적으로, MySQL에서 SQL문으로 auto_increment를 작성하고 싶다면 ALTER TABLE 구문을 사용하거나 CREATE TABLE 할 때 지정해줄수 있다)
에러 해결방법
ALTER table 테이블명 ADD COLUMN id BIGINT AUTO_INCREMENT PRIMARY KEY; |
MySQL에서 PK와 AUTO_INCREMEN는 짝궁이라는걸 항상 명심하자.
'Backend > SQL' 카테고리의 다른 글
이미지 리소스 한 번에 교체 with SQL (1) | 2023.11.08 |
---|