CREATE SEQUENCE NAME
[INCREMENT BY n]
[START WITH n]
[{MAXVALUE n | NOMAXVALUE}]
[{MINVALUE n | NOMINVALUE}]
[{CYCLE | NOCYCLE}]
[{CACHE n | NOCACHE}]
예제
CREATE SEQUENCE TEST_TABLE_SEQ
INCREMENT BY 1 -- 증가 단위는 1
START WITH 1 -- 1부터 시작
NOMAXVALUE -- 최대값 제한 없음
NOCYCLE
NOCACHE
사용
--값 가져오기
--무조건 다음 증가한 값을 가져온다
INSERT INTO TEST_TABLE
(TESTID1,TESTID2, ...생략... CREDATE,CREUSER)
VALUES
(TEST_TABLE_SEQ.NEXTVAL, ...생략... SYSDATE,'TESTUSER');
--값을 증가시키지 않고 조회만 하기
SELECT TEST_TABLE_SEQ.CURRVAL FROM DUAL;
※ 시퀀스 생성후 .NEXTVAL을 한번도 실행하지 않은 상태로 .CURRVAL로 현재 값을 조회하면
'ORA-08002: 시퀀스 KR_VENDOR_STAMP_SEQ.CURRVAL은 이 세션에서는 정의 되어 있지 않습니다.'
에러 발생함.