반응형
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 기준으로
수정이 된 것이 보인다
반응형
'SQL > MySQL' 카테고리의 다른 글
MySQL Name '테이블명_PK' ignored for PRIMARY key. 해결방법 (0) | 2022.06.15 |
---|---|
MySQL 테이블 생성 시 함수명/키워드/띄어쓰기 컬럼명으로 추가방법 (0) | 2022.05.23 |
MySQL 컬럼 기본값 현재 시간으로 설정방법 (0) | 2022.01.11 |
MySQL 버전 확인방법 (0) | 2022.01.10 |
MySQL JSON SELECT INSERT UPDATE 방법 정리 (0) | 2022.01.09 |
댓글