본문 바로가기

프로그래밍&IT/SQL Server (MS-SQL)

SEQUENCE 개체 (identity같은 효과 및 오라클에서 지원하는 Sequence같은 기능 제공)

SEQUENCE 개체 (SQL Server 2012부터 제공)

 

기존의 identity같은 효과 및 오라클에서 지원하는 Sequence같은 기능 제공

 

 

 

- 매번 입력/생성되는 Row의 고유값처리위해서 오라클에선 SEQUENCE가 존재하는걸로 알고있습니다.

   (제가 Database를 잘 모르지만 워낙 이것저것 기웃거린게 많아서...

 

   SQL Server에선 이런 기능을 제공하기위해서 SQL Server에선 IDENTITY를 제공하고 있습니다.

   그런데 이번 2012버전부터 SEQUENCE 개체를 제공하게 되었습니다.

 

 

- 형식

CREATE SEQUENCE seq

START WITH 1 -- 시작값

INCREMENT BY 1 -- 증가값

 

-- 추가 옵션

MINVALUE 100 -- 최소값

MAXVALUE 300 -- 최대값

CYCLE ; -- 반복 설정

 

-> INSERT 구문시 생성된 SEQUENCE 개체 이용

INSERT INTO tbl1 VALUES (NEXT VALUE FOR seq , 'A', 28);

 

-> 시작값을 다시 설정할때

ALTER SEQUENCE seq

RESTART WITH 13; -- 13으로 시작값 재설정