MySQL의 AUTO_INCREMENT는 새로 추가되는 레코드에 자동으로 1씩 증가하는 번호를 부여하는 기본 속성입니다. 기본적으로 1부터 시작하지만, 필요에 따라 시작 값을 원하는 숫자로 변경할 수 있습니다. 이 글에서는 AUTO_INCREMENT의 시작 번호를 변경하는 방법을 단계별로 살펴보겠습니다.
1단계: 테이블 생성하기
먼저 AUTO_INCREMENT 속성을 가진 테이블을 생성합니다. 아래 예제에서는 id 컬럼에 자동 증분을 설정하고 기본 키로 지정했습니다.
mysql> CREATE table DemoAuto -> ( -> id int auto_increment, -> name varchar(100), -> primary key(id) -> ); Query OK, 0 rows affected (0.47 sec)
2단계: ALTER TABLE로 시작 값 변경하기
테이블이 생성되면 ALTER TABLE 명령어를 사용하여 AUTO_INCREMENT의 시작 값을 변경할 수 있습니다. 기본값인 1 대신 아래 예제에서는 시작 값을 100으로 설정했습니다.
mysql> alter table DemoAuto auto_increment = 100; Query OK, 0 rows affected (0.24 sec) Records: 0 Duplicates: 0 Warnings: 0
3단계: 레코드 삽입하기
시작 값이 변경된 후 몇 개의 레코드를 테이블에 삽입합니다. 이때 id 컬럼은 생략해도 되며, name 값만 입력하면 자동으로 번호가 부여됩니다.
mysql> INSERT into DemoAuto(name) values('John');
Query OK, 1 row affected (0.10 sec)
mysql> INSERT into DemoAuto(name) values('Smith');
Query OK, 1 row affected (0.13 sec)
mysql> INSERT into DemoAuto(name) values('Bob');
Query OK, 1 row affected (0.22 sec)
4단계: 결과 확인하기
SELECT 문을 사용하여 테이블에 저장된 데이터를 조회합니다.
mysql> SELECT * from DemoAuto;
실행 결과는 다음과 같습니다.
+-----+-------+ | id | name | +-----+-------+ | 100 | John | | 101 | Smith | | 102 | Bob | +-----+-------+ 3 rows in set (0.00 sec)
위 출력 결과를 보면 레코드의 id가 기본값인 1이 아니라 100부터 시작하는 것을 확인할 수 있습니다. 이처럼 ALTER TABLE 명령어 하나만으로 AUTO_INCREMENT의 시작 값을 손쉽게 조정할 수 있습니다.