본문 바로가기

[Database] Auto Increment가 적용되지 않을 때 SET FOREIGN_KEY_CHECKS = 0;

곰곰킴 2021. 4. 8.

 

이슈

 

기존 테이블 내에서 기본키의 Auto Increment 설정을 적용할 때 적용되지 않는 오류가 있었다.

 

 

원인

 

해당 키가 다른 테이블의 외래키로 잡혀있었기 때문에 Auto Increment 설정을 할 수 없다는 것이었다.

 

Error 1833: Cannot change column 'IDX'
: used in a foreign key constraint '[외래키 인덱스]' of table '[테이블 명]' 

SQL Statement: ALTER TABLE `[테이블 명]`  CHANGE COLUMN `IDX` INT(11) NOT NULL AUTO_INCREMENT

 

 

해결 방법

 

SET FOREIGN_KEY_CHECKS = 0; 을 붙여서 외래키 검사를 무시하게 만든다.

 

SET FOREIGN_KEY_CHECKS = 0;

ALTER TABLE `[테이블 명]` 
CHANGE COLUMN `IDX` INT(11) NOT NULL AUTO_INCREMENT ;

 

댓글