Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL에서 AUTO_INCREMENT 시작 값 직접 지정하여 테이블 생성하는 방법

MySQL에서 테이블을 생성할 때 AUTO_INCREMENT 속성을 사용하면 기본 키 값이 자동으로 1부터 증가합니다. 하지만 경우에 따라 100이나 1000처럼 특정 값부터 시작하도록 지정해야 할 때가 있습니다. 이 글에서는 테이블 생성 시 AUTO_INCREMENT 시작 값을 직접 설정하는 방법을 예제와 함께 알아보겠습니다.

1. AUTO_INCREMENT 시작 값을 지정하여 테이블 생성

테이블 생성 문 마지막에 AUTO_INCREMENT=100 옵션을 추가하면, 자동 증가 값이 100부터 시작됩니다.

mysql> create table DemoTable1907
    (
    UserId int NOT NULL AUTO_INCREMENT,
    UserName varchar(20),
    UserAge int,
    UserCountryName varchar(20),
    PRIMARY KEY(UserId)
    )ENGINE=MyISAM,AUTO_INCREMENT=100;
Query OK, 0 rows affected (0.00 sec)

위 예제에서 UserId 컬럼은 AUTO_INCREMENT 속성을 가지며, 테이블 옵션으로 AUTO_INCREMENT=100을 지정했기 때문에 첫 번째 레코드의 UserId는 100부터 시작합니다.

2. INSERT 명령으로 레코드 삽입

이제 INSERT 명령을 사용하여 테이블에 데이터를 삽입해 보겠습니다. UserId는 자동으로 증가하므로 직접 입력할 필요가 없습니다.

mysql> insert into DemoTable1907(UserName,UserAge,UserCountryName) values('Chris',26,'US');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1907(UserName,UserAge,UserCountryName) values('David',38,'UK');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1907(UserName,UserAge,UserCountryName) values('John',28,'AUS');
Query OK, 1 row affected (0.00 sec)

3. SELECT 문으로 결과 확인

SELECT 문을 사용하여 테이블에 저장된 모든 레코드를 조회합니다.

mysql> select * from DemoTable1907;

쿼리를 실행하면 다음과 같은 결과가 출력됩니다.

+--------+----------+---------+-----------------+
| UserId | UserName | UserAge | UserCountryName |
+--------+----------+---------+-----------------+
|    100 | Chris    | 26      | US              |
|    101 | David    | 38      | UK              |
|    102 | John     | 28      | AUS             |
+--------+----------+---------+-----------------+
3 rows in set (0.00 sec)

결과 분석

출력 결과를 보면 UserId가 1이 아닌 100부터 시작하여 101, 102로 순차적으로 증가한 것을 확인할 수 있습니다. 이처럼 테이블 생성 시 AUTO_INCREMENT=n 옵션을 지정하면 원하는 값부터 자동 증가를 시작할 수 있습니다.

참고 사항

이미 생성된 테이블의 AUTO_INCREMENT 시작 값을 변경하려면 다음과 같이 ALTER TABLE 문을 사용할 수 있습니다.

mysql> ALTER TABLE DemoTable1907 AUTO_INCREMENT = 500;

단, 지정하려는 값이 현재 저장된 최대 값보다 작을 경우 무시되므로 주의해야 합니다. 이 방법은 주문 번호, 회원 번호 등 특정 범위의 ID가 필요한 시스템에서 유용하게 활용됩니다.