Oracle

오라클 시퀀스 ( Oracle Sequence)

슬픈달 2021. 12. 15. 11:00
반응형

* 시퀀스(Sequence) 생성

 

CREATE SEQUENCE UMS.TEST_SEQ 
INCREMENT BY 1 
START WITH 1 
MINVALUE 1 
MAXVALUE 1000 
NOCYCLE 
NOCACHE
NOORDER;

 

UMS: 스키마명

TEST_SEQ : 시퀀스명

  • INCREMENT BY : 시퀀스 실행 시 증가시킬 값
  • START WITH : 시퀀스의 시작값이다. (MINVALUE과 같거나 커야 한다)
  • MINVALUE : 시퀀스가 시작되는 최솟값이다.
  • MAXVALUE : 시퀀스가 끝나는 최댓값이다.
  • NOCYCLE | CYCLE : NOCYCLE (반복안함), CYCLE(시퀀스의 최댓값에 도달 시 최솟값 1부터 다시시작)
  • NOCACHE | CACHE : NOCACHE(사용안함), CACHE(캐시를 사용하여 미리 값을 할당해 놓아서 속도가 빠르며, 동시 사용자가 많을 경우 유리)
  • NOORDER | ORDER : NOORDER(사용안함), ORDER(요청 순서로 값을 생성하여 발생 순서를 보장하지만 조금의 시스템 부하가 있음)

 

* 시퀀스 사용방법

 

SELECT UMS.TEST_SEQ.NEXTVAL
FROM dual;

 

 

* 시퀀스 수정 

ALTER SEQUENCE UMS.TEST_SEQ MAXVALUE 9999;

 

 -- START WITH (변경불가) 외에는 모두 변경이 가능하다.

 

* 시퀀스 삭제 

DROP SEQUENCE UMS.TEST_SEQ;

 

반응형