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

MySQL 테이블에서 기본 키 자동 증가(AUTO_INCREMENT) 설정하는 방법

MySQL에서 테이블을 생성할 때 기본 키(Primary Key)에 자동 증가(AUTO_INCREMENT) 속성을 설정하면, 레코드가 삽입될 때마다 해당 열의 값이 자동으로 1씩 증가합니다. 이는 회원 번호, 주문 번호처럼 고유한 식별자가 필요한 경우 매우 유용하게 활용됩니다.

기본 문법

MySQL 테이블의 기본 키를 자동 증가로 설정하려면 아래와 같은 문법을 사용합니다.

CREATE TABLE yourTableName
(
    yourColumnName INT(6) ZEROFILL NOT NULL AUTO_INCREMENT,
    PRIMARY KEY(yourColumnName)
);

여기서 AUTO_INCREMENT는 값이 자동으로 증가하도록 지정하는 옵션이며, ZEROFILL은 자릿수를 맞추기 위해 앞부분을 0으로 채워주는 옵션입니다. 예를 들어 INT(6) ZEROFILL로 선언하면 1이 '000001' 형태로 저장·표시됩니다.

실제 테이블 생성 예제

먼저 기본 키에 자동 증가가 설정된 테이블을 생성해 보겠습니다.

mysql> CREATE TABLE DemoTable
    (
    UserId INT(6) ZEROFILL NOT NULL AUTO_INCREMENT,
    PRIMARY KEY(UserId)
    );
Query OK, 0 rows affected (0.81 sec)

레코드 삽입하기

INSERT 명령어를 사용해 몇 개의 레코드를 삽입합니다. 자동 증가 열은 값을 직접 지정하지 않아도 되므로, 아래처럼 빈 값으로 INSERT 하면 됩니다.

mysql> INSERT INTO DemoTable values();
Query OK, 1 row affected (0.12 sec)

mysql> INSERT INTO DemoTable values();
Query OK, 1 row affected (0.13 sec)

mysql> INSERT INTO DemoTable values();
Query OK, 1 row affected (0.10 sec)

mysql> INSERT INTO DemoTable values();
Query OK, 1 row affected (0.44 sec)

결과 확인하기

SELECT 문을 사용해 테이블의 모든 레코드를 조회합니다.

mysql> select *from DemoTable;

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

+--------+
| UserId |
+--------+
| 000001 |
| 000002 |
| 000003 |
| 000004 |
+--------+
4 rows in set (0.00 sec)

실행 결과를 보면 UserId 값이 별도로 입력하지 않았음에도 000001부터 000004까지 자동으로 순차적으로 증가한 것을 확인할 수 있습니다. 이처럼 AUTO_INCREMENT를 활용하면 중복되지 않는 고유 식별자를 손쉽게 관리할 수 있습니다.