MySQL AUTO_INCREMENT 값을 초기화 하는 방법
페이지 정보
본문
mySQL에서 PRIMARY KEY 에 AUTO_INCREMENT 속성을 주어서 키값을 자동으로 증가시킬 수 있습니다.
행의 값을 UNIQUE 하게 만들기 때문에 데이터가 삭제 된다고 해도 한 번 증가된 값은 다시 조정되지 않습니다.
예를 들어, 100개의 데이터를 넣은 다음, 1개 데이터를 삭제한 후, 다시 넣어보면 인덱스 값은 99가 아닌 101이 됩니다.
1. AUTO_INCREMENT 값을 초기화 방법
ALTER TABLE 테이블이름 AUTO_INCREMENT = 1;
ALTER TABLE [TABLE명] AUTO_INCREMENT = [시작할 값];
물론 이 경우에는, 테이블에 새로 시작할 값보다 높은 값이 있으면 안됩니다.
2. AUTO_INCREMENT 값을 초기화 후, 테이블 안의 모든 데이터의 ID값을 변경하는 방법입니다.
ALTER TABLE [테이블명] AUTO_INCREMENT=1;
SET @COUNT = 0;
UPDATE [테이블명] SET [AUTO_INCREMENT 열 이름] = @COUNT:=@COUNT+1;
위 쿼리문은 현재 모든 데이터 ID값을 1부터 시작하고,
다음 인덱스 값을 [마지막 행번호 + 1] 로 변경합니다.
예를 들면, 테이블 `tb_board_item` 의 AUTO_INCREMENT 값을 초기화 후, 모든 데이터의 인덱스를 1부터 시작하려면 다음과 같습니다.
ALTER TABLE `tb_board_item` AUTO_INCREMENT=1;
SET @COUNT = 0;
UPDATE `tb_board_item` SET board_item_key = @COUNT:=@COUNT+1;
참고자료
https://amaze9001.tistory.com/28
행의 값을 UNIQUE 하게 만들기 때문에 데이터가 삭제 된다고 해도 한 번 증가된 값은 다시 조정되지 않습니다.
예를 들어, 100개의 데이터를 넣은 다음, 1개 데이터를 삭제한 후, 다시 넣어보면 인덱스 값은 99가 아닌 101이 됩니다.
1. AUTO_INCREMENT 값을 초기화 방법
ALTER TABLE 테이블이름 AUTO_INCREMENT = 1;
ALTER TABLE [TABLE명] AUTO_INCREMENT = [시작할 값];
물론 이 경우에는, 테이블에 새로 시작할 값보다 높은 값이 있으면 안됩니다.
2. AUTO_INCREMENT 값을 초기화 후, 테이블 안의 모든 데이터의 ID값을 변경하는 방법입니다.
ALTER TABLE [테이블명] AUTO_INCREMENT=1;
SET @COUNT = 0;
UPDATE [테이블명] SET [AUTO_INCREMENT 열 이름] = @COUNT:=@COUNT+1;
위 쿼리문은 현재 모든 데이터 ID값을 1부터 시작하고,
다음 인덱스 값을 [마지막 행번호 + 1] 로 변경합니다.
예를 들면, 테이블 `tb_board_item` 의 AUTO_INCREMENT 값을 초기화 후, 모든 데이터의 인덱스를 1부터 시작하려면 다음과 같습니다.
ALTER TABLE `tb_board_item` AUTO_INCREMENT=1;
SET @COUNT = 0;
UPDATE `tb_board_item` SET board_item_key = @COUNT:=@COUNT+1;
참고자료
https://amaze9001.tistory.com/28
댓글목록
등록된 댓글이 없습니다.