본문 바로가기
SQL/MySQL

MySQL auto_increment 설정 및 초기화 방법

by wakestand 2022. 2. 8.
반응형

ALTER TABLE 테이블명 AUTO_INCREMENT=1;

을 사용해주면

auto_increment 초기값을 설정할 수 있는데

1은 원하는 숫자로 바꿔도 상관없다

 

여기서 새로 설정하는 auto_increment 값보다

더 작은 값이 있을 경우

 

ALTER를 했다고 한들

현재 auto_increment로 들어간 값 중

가장 큰 값 기준으로 설정이 된다

 

그런 경우에는 

 

ALTER TABLE 테이블명 AUTO_INCREMENT=1;
SET @INCRE = 0;
UPDATE 테이블명 SET ID = @INCRE:=@INCRE+1;

 

위 세 쿼리를 한번씩 돌려줘야 하는데

예제를 한번 보자면

 

기존에 auto_increment가 10부터 시작했을 경우

위와 같이 auto_increment를 1로 초기화하고

임의 변수 @INCRE에 auto_increment에서

1을 뺀 값을 할당하고

 

기존 auto_increment가 들어갔던 값에

@INCRE 값부터 1씩 올려가며

UPDATE를 하게 되는데

 

세 쿼리를 돌리고 나면

1부터 4까지 신규 auto_increment 기준으로

수정이 된 것이 보인다

반응형

댓글