국비 지원/SQL

[Oracle] 시퀀스(Sequence)

아민_ 2023. 9. 3. 20:18
728x90

시퀀스

자동으로 순차적으로 증가하는 순번을 반환하는 데이터베이스 객체를 말한다.

시퀀스는 게시판 번호와 같이 번호를 순차적으로 할당할 때 필요하다.

 

시퀀스 생성하기

CREATE SEQUENCE [시퀀스명]
INCREMENT BY [증감숫자]
START WITH [시작숫자]
MINVALUE [최솟값]
MAXVALUE [최대값];

CREATE SEQUENCE SEQ_NO 
INCREMENT BY 1 
START WITH 1 
MINVALUE 1 
MAXVALUE 100;

 

시퀀스 번호 확인하기

SELECT SEQ_NO.NEXTVAL FROM DUAL;

위의 코드를 한번 더 실행시키면 아래와 같이 시퀀스 값이 1이 늘어나는 것을 확인할 수 있다.

 

현재 시퀀스 번호 확인하기

SELECT SEQ_NO.CURRVAL FROM DUAL;

NEXTVAL보다 CURRVAL을 먼저 호출할 수 없다는 것을 기억하자.

NEXTVAL을 통해 시퀀스 값을 증가 시켜준 후 CURRVAL을 통해 현재 시퀀스 값을 확인해야 한다.

 

시퀀스 삭제하기

DROP SEQUENCE SEQ_NO;

728x90