MySQL에서 기본 키(Primary Key)가 1000부터 시작되도록 하려면 ALTER TABLE 문을 사용하여 테이블의 AUTO_INCREMENT 값을 1000으로 설정하면 됩니다. 기본 문법은 다음과 같습니다.
ALTER TABLE 테이블이름 AUTO_INCREMENT = 1000;
예제 테이블 생성하기
먼저 문법을 이해하기 위해 예제용 테이블을 생성해 보겠습니다. 아래 쿼리는 자동 증가하는 ProductId 컬럼을 기본 키로 가지는 테이블을 만듭니다.
mysql> CREATE TABLE PrimaryKey1000Demo
-> (
-> ProductId INT AUTO_INCREMENT,
-> PRIMARY KEY(ProductId)
-> );
Query OK, 0 rows affected (0.56 sec)AUTO_INCREMENT 시작 값을 1000으로 변경
테이블 생성 후, 다음 쿼리를 실행하여 기본 키의 시작 값을 1000으로 설정합니다.
mysql> ALTER TABLE PrimaryKey1000Demo AUTO_INCREMENT = 1000; Query OK, 0 rows affected (0.20 sec) Records: 0 Duplicates: 0 Warnings: 0
레코드 삽입 및 결과 확인
시작 값이 1000으로 변경되었습니다. 이제 실제로 레코드를 몇 개 삽입하여 기본 키가 어떤 값부터 시작되는지 확인해 보겠습니다.
mysql> INSERT INTO PrimaryKey1000Demo VALUES(); Query OK, 1 row affected (0.11 sec) mysql> INSERT INTO PrimaryKey1000Demo VALUES(); Query OK, 1 row affected (0.19 sec) mysql> INSERT INTO PrimaryKey1000Demo VALUES(); Query OK, 1 row affected (0.23 sec) mysql> INSERT INTO PrimaryKey1000Demo VALUES(); Query OK, 1 row affected (0.08 sec)
SELECT 문을 사용하여 테이블의 모든 레코드를 조회합니다.
mysql> SELECT * FROM PrimaryKey1000Demo;
실행 결과
아래 출력 결과에서 볼 수 있듯이, 기본 키인 ProductId가 정확히 1000부터 시작하여 순차적으로 증가하는 것을 확인할 수 있습니다.
+-----------+ | ProductId | +-----------+ | 1000 | | 1001 | | 1002 | | 1003 | +-----------+ 4 rows in set (0.00 sec)
이처럼 ALTER TABLE ... AUTO_INCREMENT = 시작값; 구문 하나만으로 새로운 레코드에 할당될 기본 키의 시작 번호를 원하는 값으로 손쉽게 지정할 수 있습니다. 참고로 이미 데이터가 존재하는 테이블이라면, 설정한 시작 값이 현재 최대 기본 키 값보다 작을 경우 무시되므로 주의해야 합니다.