You dont have javascript enabled! Please download Google Chrome!
맨 위로 스크롤

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


Jneer - 2017-10-08 - 2 개의 댓글

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 개의 댓글

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

댓글 달기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다

error: 경고: 콘텐츠가 보호되고 있습니다. 복사 및 무단 사용을 금지합니다.