728x90
오라클에서 시퀀스(sequence)는 일련 번호나 자동 증가 값을 생성할 때 사용하는 데이터베이스 객체다.
주로 테이블의 기본키나 고유한 번호를 부여할 때 사용 된다.
시퀀스는 순차적으로 증가 시킬때 사용하며 특정 값에 도달 했을때 다시 1부터 시작하도록 설정 할 수도 있다.
시퀀스 생성 쿼리 문법
CREATE SEQUENCE SEQNAME
INCREMENT BY 1 --증감숫자 1이면 1,2,3 2이면 1,3,5
START WITH 1
MINVALUE 1 --최소값
MAXVALUE 9999 -- 최대값
CYCLE | NOCYCLE --최대값에 이른 후에 처음으로 돌아갈 것인지
CACHE | NOCACHE -- 캐시를 사용하여 미리 값을 할당할지 안할것인지
ORDER | NOORDER; -- 요청의 순서를 보장하는지 안하는지
생성 된 시퀀스를 쿼리문에서 사용하는 예제
-- 다음 값을 얻기
SELECT SEQNAME.NEXTVAL FROM DUAL;
-- 현재 값을 얻기 (NEXTVAL을 최소 한 번 호출한 후에만 사용 가능)
SELECT SEQNAME.CURRVAL FROM DUAL;
시퀀스 수정 및 삭제 방법
시퀀스를 수정을 위해서는 ALTER SEQUENCE를, 삭제를 위해서는 DROP SEQUENCE를 사용하면 됩니다.
-- 시퀀스 수정하기
ALTER SEQUENCE SEQNAME
INCREMENT BY 10
MAXVALUE 10000
CYCLE;
-- 시퀀스 삭제하기
DROP SEQUENCE SEQNAME;
'웹개발 > 데이터베이스' 카테고리의 다른 글
[데이터베이스이론]관계형 데이터베이스 (0) | 2024.03.19 |
---|---|
[오라클]자주 발생하는 오류 메시지와 대처 (0) | 2024.03.05 |
[오라클]자주 사용하는 내장 함수들 (0) | 2024.03.05 |
오라클 인덱스(Index) (0) | 2024.02.29 |
오라클 힌트(hint) (0) | 2024.02.28 |