본문 바로가기
DB

Oracle 시퀀스 (SEQUENCE)

by 달보드레. 2020. 5. 22.

시퀀스(SEQUENCE)

 

자동 순번을 반환하는 데이터베이스 객체.


MYSQL의 auto_increment와 유사하다.
 
Sequence에서 부여하는 숫자는 유일한 숫자

 

따라서 > 생성된 숫자가 지워지면 시퀀스를 삭제 

(새로 만들기전엔 복구 안됨)
    

시퀀스를 사용할 테이블은 시퀀스보다 먼저 생성되어야 함

(시퀀스 생성 이후 사용할 테이블을 만들면 카운트가 2부터 시작된다.)

 

CREATE SEQUENCE SEQ_EX 
       START WITH ""
       INCREMENT BY "" 
       MAXVALUE or NOMAXVALUE ""
       MINVALUE or NOMINVALUE ""
       CYCLE or NOCYCLE ""

* START WITH
시퀀스의 시작 값을 지정

1로 지정하면 1부터 순차적으로 시퀀스번호가 증가한다

(디폴트는 1)

 

* INCREMENT BY
시퀀스의 증가 값 

 

* MAXVALUE or NOMAXVALUE 
시퀀스가 증가하는 최대값 o

 

* MINVALUE or NOMINVALUE
MINVALUE는 시퀀스의 최소값

(디폴트는 1)

SEQ_EX.NEXTVAL : 해당 시퀀스에서 다음 순번 값을 자동으로 가져온다.
SEQ_EX.CURRVAL : 해당 시퀀스의 현재 값

시퀀스의 수정은 ALTER로 하면 된다

 

시퀀스 삭제 :

DROP SEQUENCE SEQ_EX;

 

현재 시퀀스 값 조회 :

SELECT LAST_NUMBER FROM USER_SEQUENCES WHERE SEQUENCE_NAME = 'SEQ_EX';


'DB' 카테고리의 다른 글

[ORACLE] SQL - 1  (0) 2020.06.02
오라클 11g 시퀀스 2부터 시작 오류  (0) 2020.05.23
Oracle - SYSDATE  (0) 2020.05.20
Oracle 계정 추가 , 잠긴 계정 활성화 하는법  (0) 2020.05.19
MYSQL - SQL 기초  (0) 2020.05.19