JooTC
Database schema

mySQL AUTO INCREMENT 값 초기화 한 뒤 다시 인덱싱하기

Database schema

데이터베이스 테이블에는 때때로 PRIMARY KEY 값으로 AUTO INCREMENT ID값(Row number)을 사용합니다.

이는 고유 행을 구분 할 수 있는 구분 번호이며 이전 데이터가 삭제 된다 해도 ID 값은 조정 되지 않습니다.

1행 = 1, A / 2행 = 2, B / 3행 = 3, C의 값이 있는 테이블(여기서 숫자는 AUTO INCREMENT 값)에서 2행을 DELETE 할 경우 1행 = 1, A / 2행 = 3, C 와 같이 ID 값은 변화 하지 않습니다. 따라서 아래 SQL문으로 ID 값을 1부터 다시 인덱싱할 수 있습니다.

 

mySQL AUTO INCREMENT 값 초기화 후 재인덱싱


ALTER TABLE [테이블 명] AUTO_INCREMENT=1;
SET @COUNT = 0;
UPDATE [테이블 명] SET [AUTO_INCREMENT 열 이름] = @COUNT:=@COUNT+1;

 

위 SQL문은 현재 모든 데이터의 ID 값을 1부터 재조정 하는 것은 물론 다음 INDEX 값을 마지막 행 번호 + 1 로 지정하는 명령어입니다.

이 포스트가 도움이 되었나요?

2
댓글 남기기

avatar
1 댓글 스레드
1 답변 스레드
0 팔로워
 
답변 많은 댓글
인기 있는 댓글
2 댓글 작성자
JooTC노내영 최근 댓글 작성자
노내영
유저

안녕하세요.
db와 연결된 프로그램 test 중 auto_increment로 문제가 발생해서 이 블로그를 참조했습니다.
좋은 내용이어서 초기화 후 재인덱싱 코드 내용과 디자인을 쓰고 출처를 밝혔습니다.
혹시 사용을 원하시지 않는다면 연락주시면 감사하겠습니다.
좋은 내용 잘 보고 갑니다

error: 경고: 무단 콘텐츠 복사 및 사용을 금지하고 있습니다. 이해해주셔서 감사합니다.