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

MySQL 테이블 생성 쿼리에서 'AUTO_INCREMENT=5'의 의미와 활용 방법

MySQL에서 테이블 생성 쿼리에 AUTO_INCREMENT=5를 지정하면 자동 증가 값이 기본값인 1이 아닌 5부터 시작됩니다. 즉, 첫 번째 레코드의 ID가 5로 할당되며 이후 레코드는 6, 7, 8... 순으로 증가합니다.

AUTO_INCREMENT 옵션을 별도로 설정하지 않으면 MySQL은 기본적으로 1부터 시작하므로, 특정 숫자부터 시작해야 하는 경우에만 이 옵션을 사용하면 됩니다.

AUTO_INCREMENT 시작 값 설정 문법

테이블 생성 시 자동 증가 시작 값을 지정하는 기본 문법은 다음과 같습니다.

CREATE TABLE yourTableName
(
   yourColumnName1 dataType NOT NULL AUTO_INCREMENT,
   ...
   N,
   PRIMARY KEY(yourColumnName1)
) AUTO_INCREMENT=5;

위 문법을 실제 예제를 통해 더 자세히 살펴보겠습니다.

Case 1: 기본 설정 — 1부터 시작하는 경우

AUTO_INCREMENT 시작 값을 따로 지정하지 않으면, 기본 표준에 따라 자동 증가 값은 1부터 시작됩니다.

먼저 일반적인 방식으로 테이블을 생성하는 쿼리입니다.

mysql> create table defaultAutoIncrementDemo
    -> (
    -> Id int NOT NULL AUTO_INCREMENT,
    -> Name varchar(10),
    -> PRIMARY KEY(Id)
    -> );
Query OK, 0 rows affected (2.19 sec)

이제 insert 명령으로 몇 개의 레코드를 삽입해 보겠습니다.

mysql> insert into defaultAutoIncrementDemo(Name) values('John');
Query OK, 1 row affected (0.23 sec)
mysql> insert into defaultAutoIncrementDemo(Name) values('James');
Query OK, 1 row affected (0.14 sec)
mysql> insert into defaultAutoIncrementDemo(Name) values('Robert');
Query OK, 1 row affected (0.14 sec)
mysql> insert into defaultAutoIncrementDemo(Name) values('Mike');
Query OK, 1 row affected (0.13 sec)

select 문으로 전체 레코드를 조회하면 Id가 1부터 차례대로 증가한 것을 확인할 수 있습니다.

mysql> select *from defaultAutoIncrementDemo;

실행 결과는 다음과 같습니다.

+----+--------+
| Id | Name   |
+----+--------+
|  1 | John   |
|  2 | James  |
|  3 | Robert |
|  4 | Mike   |
+----+--------+
4 rows in set (0.00 sec)

Case 2: AUTO_INCREMENT=5로 5부터 시작하는 경우

이번에는 테이블 생성 시 AUTO_INCREMENT=5 옵션을 추가하여 자동 증가 값이 5부터 시작되도록 설정해 보겠습니다.

mysql> create table AutoIncrementStartsFrom5
-> (
-> Id int NOT NULL AUTO_INCREMENT,
-> Name varchar(10),
-> PRIMARY KEY(Id)
-> )AUTO_INCREMENT=5;
Query OK, 0 rows affected (1.00 sec)

마찬가지로 insert 명령으로 레코드를 삽입합니다.

mysql> insert into AutoIncrementStartsFrom5(Name) values('Larry');
Query OK, 1 row affected (0.15 sec)
mysql> insert into AutoIncrementStartsFrom5(Name) values('David');
Query OK, 1 row affected (0.20 sec)
mysql> insert into AutoIncrementStartsFrom5(Name) values('Bob');
Query OK, 1 row affected (0.13 sec)
mysql> insert into AutoIncrementStartsFrom5(Name) values('Ricky');
Query OK, 1 row affected (0.14 sec)

select 문으로 전체 레코드를 조회해 보겠습니다.

mysql> select *from AutoIncrementStartsFrom5;

실행 결과는 다음과 같습니다.

+----+-------+
| Id | Name |
+----+-------+
| 5 | Larry |
| 6 | David |
| 7 | Bob   |
| 8 | Ricky |
+----+-------+
4 rows in set (0.00 sec)

출력 결과를 보면 자동 증가 값이 5부터 시작하여 6, 7, 8 순으로 할당된 것을 확인할 수 있습니다. 이처럼 AUTO_INCREMENT=n 옵션을 활용하면 원하는 숫자부터 자동 증가 값을 시작할 수 있습니다.