[SQL] SEQUENCE ORACLE/SQL 2012. 3. 29. 17:57

유일한 값을 생성한다. 증가 내용이나 이런건 물론 사용자가 지정 할 수가 있다.

PRIMARY KEY와 관련되는 경우 종종 사용하는 편인데.. 난 쓸 곳이 없어서 잘 안쓰는 듯..

다음은 예제이다.

CREATE SEQUENCE seq_no

START WITH 1

INCREMENT BY 1

MAXVALUE 1000

위와 같이 하면 기본적으로 생성이 된다. 시작과 증가 정도, 맥스 값을 지정한다.

NEXTVAL을 이용하면 하나씩 증가 하여 자동으로 입력이 가능하고 CURRVAL을 이용하면 현재 시퀀스의 값을 알 수가 있다.

또한 NOMAXVALUE나 NOMINVALUE를 지정하면 제한이 풀리며 CYCLE을 이용할 경우 최대 값을 넘기면 처음부터 순환하게 되어있다. NOCYCLE은 당연히 그 반대이다.

수정할 경우 ALTER를 이용하면 된다. 삭제시에는 DROP을 이용한다.