
MSSQL 자동 증가 열(IDENTITY)과 시퀀스(Sequence)DB/etc2023. 10. 5. 16:28
Table of Contents
자동 증가 열(IDENTITY)
- 자동 증가 열은 테이블의 열(column) 중 하나를 정의할 때 사용
이 열의 값을 데이터가 삽입될 때마다 자동으로 증가시킴 - 주로 기본 키(primary key)로 사용되며, 각 행(row)마다 고유한 값을 가짐
- 예시
- ID 열은 자동으로 1부터 시작하여 1씩 증가하는 값을 가짐
CREATE TABLE MyTable (
ID INT IDENTITY(1,1) PRIMARY KEY,
Name VARCHAR(50)
);
시퀀스
- 시퀀스는 별도의 객체로 정의되며, 테이블과는 독립적으로 존재
- 시퀀스는 데이터를 생성하는 데 사용되는 일련 번호를 생성하는 데 주로 사용
- 시퀀스를 사용하면 여러 테이블에서 같은 시퀀스를 공유하거나 복잡한 값 생성 규칙을 정의할 수 있음
- 예를 들어, 아래와 같이 시퀀스를 만들고 이후 테이블에서 시퀀스를 사용하여 값을 생성할 수 있음
INSERT INTO MyTable (ID, Name) VALUES (NEXT VALUE FOR MySequence, 'John');
CREATE SEQUENCE MySequence START WITH 1 INCREMENT BY 1;
<요약>
- 자동 증가 열(IDENTITY)은 주로 특정 테이블의 열에서 사용되며, 행 단위로 고유한 값을 생성
- 시퀀스(Sequence)는 독립적인 객체로 정의되며, 여러 테이블에서 공유할 수 있고 복잡한 값 생성 규칙을 정의하는 데 사용
'DB > etc' 카테고리의 다른 글
데이터베이스 트리거(Database Trigger) (0) | 2023.10.10 |
---|---|
OPENQUERY (0) | 2023.10.05 |
MSSQL OPTION(RECOMPILE) (1) | 2023.10.05 |
매핑 테이블(mapping table) (1) | 2023.10.05 |
DB 트랜잭션 (0) | 2023.10.05 |