-
[MySQL] auto_increment 값 초기화하기Computer Science/데이터베이스 2019. 11. 9. 01:14
임의의 DB의 테이블에 인덱스 값이 1,2,3,4 인 4개의 레코드가 있다고 가정했을때, phpmyadmin이나 쿼리를 사용해서 4번 인덱스의 레코드를 삭제하면 그 다음에 레코드를 생성시 4번이 아닌 5번으로 생성되는 경우가 발생한다.
(1,2,3,5 이런식으로...)
이런 경우를 막기 위해서 크게 'phpmyadmin의 테이블 작업' 혹은 '쿼리'를 이용하는 경우 두가지가 있다.
1. phpmyadmin의 테이블 작업
위의 예시에서 인덱스 4번의 레코드를 삭제했으므로 현재 AUTO_INCREMENT 5로 자동으로 지정되어 있을 것이다. 이를 4로 고쳐주면 원하는 결과인 인덱스가 순서대로 1,2,3,4 로 설정되는 것을 확인할 수 있다.
이런식으로 상황에 맞게끔 AUTO_INCREMENT 값을 설정해주면 된다.
2. 쿼리
두번째 방법은 쿼리를 이용해서 AUTO_INCREMENT 값을 초기화 시켜준 후 테이블 안의 인덱스값을 재설정 하는 방법이다.
ALTER TABLE [테이블명] AUTO_INCREMENT=1;
SET @COUNT = 0;
UPDATE [테이블명] SET [AUTO_INCREMENT 열 이름] = @COUNT:=@COUNT+1;
'Computer Science > 데이터베이스' 카테고리의 다른 글
데이터베이스 격리수준 (0) 2020.09.24 [Oracle] Sequence 초기화 하는법 (0) 2020.07.18 관계형 DB(RDBMS) VS 비관계형 DB(No-SQL) (0) 2019.10.02 릴레이션, 키, 무결성 제약조건 (0) 2018.10.16 데이터베이스 시스템 (0) 2018.10.05