IT 관련,,/데이터베이스(sql)

[SQL/Oracle]오라클 시퀀스에 대해서 알아보자~!!

IT깡패's 2020. 7. 5. 13:33
728x90
반응형
SMALL

시퀀스란?

연속적인 일련번호를 만들어주는 기능 입니다~!! 순차적으로 수를 넣어줍니다~

특히 시작 값을 넣으면 1부터 시작하는 값을 넣어주는 것입니다.

 

 

문법

create sequence 시퀀스 이름

increment by n             ------> 시퀀스 증가 값(기본 1),    -1로 설정하면 감소하는 시퀀스임

start with 1                   ------> 시퀀스 시작 값

maxvalue 100000       ------> 시퀀스 최대값(다른옵션 : nomaxvalue)

minvalue 1                    ------> cycle일 경우 새로 시작되는 값(다른옵션 : nominvalue)

cycle                            ------> 시퀀스 번호 순환 설정 (다른옵션 : nocycle)

cache 10;                     ------> 시퀀스 생성 속도를 위한 캐싱 지정

 

문법에 cache부분이 있습니다.

이부분에 대하여 설명드리겠습니다.

만약 대량의 데이터가 한꺼번에 입력되는 경우 

아주 짧은 시간이라 하더라고 시퀀스 실행속도가 약간의 대기 시간이 발생할 수 있습니다.

이때 미리 메모리상에 시퀀스 번호를 두고 사용하는 것 입니다.

 

시퀀스 생성

create sequence no_seq

increment by 1

start with 1

maxvalue 100000

minvalue 1

cycle

cache 10;

 

시퀀스 insert 테스트

insert into emp values(no_seq.nextval, 'ddd', 'dff', 5000);

 

위의 쿼리는 시퀀스의 다음값을 불러옵니다.

현재값은 no_seq.currval 로 확인가능 합니다.

 

시퀀스 삭제

drop sequence no_seq;

 

- 참고링크


오라클 시퀀스 - https://lee-mandu.tistory.com/485

728x90
반응형
LIST