mySQL AUTO_INCREMENT 값을 초기화 하는 방법
아래는 [heidiSQL] 화면
선택할 수 있는 기본값의 종류 이며 맨 아래 AUTO_INCREMENT
mySQL에서 PRIMARY KEY 에 AUTO_INCREMENT 속성을 주어서 키값을 자동으로 증가시킬 수 있다.
행의 값을 UNIQUE 하게 만들기 위한 것 _ 주로 Primary Key로 활용한다.
이전 데이터가 삭제 된다고 해도 한 번 증가된 값은 다시 조정되지 않는다.
예를 들어, 100개의 데이터를 넣은 다음, 1개 데이터를 삭제한 후, 다시 넣어보면 인덱스 값은 101이 된다.
이 AUTO_INCREMENT 값을 초기화 하려면, 아래와 같은 쿼리를 실행시켜주면 된다.
1
|
ALTER TABLE [TABLE명] AUTO_INCREMENT = [시작할 값];
|
cs |
물론 이 경우에는, 테이블에 새로 시작할 값보다 높은 값이 있으면 안된다.
또 다른 방법은,
AUTO_INCREMENT 값을 초기화 후, 테이블 안의 모든 데이터의 ID값을 재조정하는 방법
1
2
3
|
ALTER TABLE [테이블명] AUTO_INCREMENT=1;
SET @COUNT = 0;
UPDATE [테이블명] SET [AUTO_INCREMENT 열 이름] = @COUNT:=@COUNT+1;
|
cs |
위 쿼리문은 현재 모든 데이터 ID값을 1부터 재조정하고,
다음 인덱스 값을 [마지막 행번호 + 1] 로 정하는 명령어
예를 들면, 테이블 `tb_board_item` 의 AUTO_INCREMENT 값을 초기화 후, 모든 데이터의 인덱스를 1부터 조정하려면, 다음과 같다
1
2
3
|
ALTER TABLE `tb_board_item` AUTO_INCREMENT=1;
SET @COUNT = 0;
UPDATE `tb_board_item` SET board_item_key = @COUNT:=@COUNT+1;
|
cs |
'+++팁+++' 카테고리의 다른 글
SQL 정리 (0) | 2022.01.29 |
---|---|
몬터레이 파티션 설치 (0) | 2022.01.20 |
github (깃허브) (0) | 2022.01.19 |
🚉 ngrok (로컬 호스트 외부 접속하기_feat.homebrew) (1) | 2022.01.16 |
SpringBoot) 서버 재시작없이 뷰 반영하기 (properties 주석 / 한글 설정) (0) | 2022.01.15 |