- 연속적인 번호를 만들어 주는 기능
- 시퀀스란 자동으로 순차적으로 증가하는 순번을 반환하는 데이터베이스 객체입니다.
- 보통 PK값에 중복값을 방지하기 위해 사용한다.
CREATE SEQUENCE seq_serial_no INCREMENT BY 1 -- INCREMENT BY : 증가 값 // 1씩 증가 START WITH 1 -- START WITH : 시작 값 MAXVALUE 110 -- MAXVALUE : 최대 값 MINVALUE 99 -- MINVALUE : 최소 값 CYCLE -- CYCLE : max 값 도달 시 다시 mim으로 돌아간다. -- NOCYCLE(기본값) cache 2 -- cache : 메모리 보관 값 ;
예시
CREATE TABLE good( good_no number(3), good_name varchar2(10) ); SELECT * FROM GOOD g ; INSERT INTO GOOD VALUES (seq_serial_no.nextval,'제품11') -- 다음 번호 출력 ; INSERT INTO GOOD VALUES (seq_serial_no.currval,'제품12') -- 동일 번호 출력 ; SELECT seq_serial_no.currval FROM dual ; DROP SEQUENCE seq_serial_no; -- 시퀀스 삭제
INSERT INTO GOOD VALUES (seq_serial_no.nextval,'제품1')
사용하면 위에서 시작값은 1이니 1시작하고 '제품2'로가면 2번으로 간다.INSERT INTO GOOD VALUES (seq_serial_no.currval,'제품1')
사용하면 시작값이 1인데 '제품2'로 출력하면 번호는 제품1과 동일해진다.