SEQUENCE와 IDENTITY를 이용해 컬럼을 생성하면 행 INSERT시 초기값 기준으로 일정하게 증가하는 값을 얻을 수 있다.
1)IDENTITY:
-테이블 생성시 컬럼에 IDENTITY(시작값 , 증가값) 옵션을 같이 넣어주는 방식으로 사용한다.
EX) 쿼리: CREATE TABLE EX( ....... , NUM INT IDENTITY(0,2) ,...............)
결과: 1번째 NUM컬럼 값 0 , 2번째 NUM컬럼 값 2 , 3번쨰 NUM컬럼 값 4 ......
2)SEQUENCE:
-SEQUENCE를 선언하고 테이블 생성시 컬럼을 NEXT VALUE FOR PRODUCTSEQ로 작성하면 된다.
<선언>
CREATE SEQUENCE 시퀀스명
AS 타입
START WITH 시작값
INCREMENT BY 증가/감소값
MINVALUE 최소값
MAXVALUE 최대값
NO CYCLE
GO ;
<실행>
1> 컬럼명이 필요 없다면
CREATE TABLE 테이블명
( ..........., NEXT VALUE FOR 시퀀스명 ,.......................)로 테이블 생성 후 해당 컬렁 제외하고 INSERT하면 컬럼명이 '이름없습'이된다.
2> 컬럼명이 필요한 경우
INSERT INTO 테이블명(......,컬러명,.....) VALUES(......., NEXT VALUE FOR 시퀀스명 , ................)로 INSERT