728x90
반응형

시퀀스 생성 및 사용하기 [CREATE SEQUENCE] 

 

1. FORMAT

CREATE SEQUENCE sequence_name
[INCREMENT BY n1]
[START WITH n2]
[MAXVALUE n3 or NOMAXVALUE]
[MINVALUE n4 or NOMINVALUE]
[CYCLE or NOCYCLE]
[CACHE or NOCACHE];

 

1.1 옵션에 대한 설명

옵션

옵션 설명

sequence_name 

생성하고자 하는 시퀀스 명

INCREMENT BY n1 

해당 시퀀스의 증가값을 지정한다 생략하면 1로 지정됨

START WITH n2 

해당 시쿼스가 처음 시작하는 값을 지정한다 생략하면 1로 지정됨

MAXVALUE n3 

해당 시퀀스가 생성할 수 있는 최대값,

NOMAXVALUE 

오름차순 최대 10의 27승 까지, 내림차순 -1 까지 생성됨

MINVALUE n4 

해당 시퀀스가 생성할 수 있는 최소값

NOMINVALUE 

오름차순 1 까지, 내림차순 -10의 26승 까지

CYCLE 

해당 시퀀스가 최대값에 도달한 후 다시 처음부터 시퀀스를 생성한다

NOCYCLE 

해당 시퀀스가 최대값에 도달해도 다시 생성하지 않는다[DEFAULT]

CACHE 

시퀀스 값을 메모리에 할당하여 처리한다 [ORACLE DEFAULT 20]

NOCACHE   

시퀀스를 메모리에 할당하여 사용하지 않음


 

2. 예제

 예제1

CREATE SEQUENCE BOARD_SEQ_NO 

INCREMENT BY 2

START WITH 1
MAXVALUE 1000
NOCYCLE
NOCACHE; 

BOARD_SEQ_NO 시퀀스를 생성한다.
초기값은 1부터 시작하며 2씩 증가하고 1000이 되거나 1000에 가장 근접한 값을 가지게 되면
종료된다.(NOCYCLE 지정에 의해)
NOCHCHE지정으로 메모리에 CACHE하지는 않는다.

 

결과) 1 3 5 7 9 ..... 999

 

 

예제2

CREATE SEQUENCE PA_SEQ_NO
INCREMENT BY -1
START WITH 10000
MAXVALUE 10000

MINVALUE 0
NOCYCLE
NOCACHE;

 PA_SEQ_NO 시퀀스를 생성한다.
초기값은 10000부터 시작하며 1씩 감소하고 0이 되면 종료된다.
NOCHCHE지정으로 메모리에 CACHE하지는 않는다.

결과) 10000, 9999, 9998, 9997,9996 ... 0

 

728x90
반응형
블로그 이미지

nineDeveloper

안녕하세요 현직 개발자 입니다 ~ 빠르게 변화하는 세상에 뒤쳐지지 않도록 우리모두 열심히 공부합시다 ~! 개발공부는 넘나 재미있는 것~!

,