DATABASE/이론
[DB] 시퀀스 ( SEQUENCE ) - 생성 , 적용 , 수정 , 삭제
printf100
2019. 12. 10. 21:42
시퀀스 ( SEQUENCE ) 란 ?
-
지정된 값만큼 증가하거나 감소시키는 자동 번호 발생기
-
UNIQUE한 값을 생성해줍니다.
-
주로 PRIMARY KEY의 값을 생성해주기 위해 사용합니다.
-
테이블과 독립적이기 때문에 하나의 시퀀스를 여러 테이블에서 사용할 수 있습니다.
-
생성
CREATE SEQUENCE TEST_SEQ
START WITH 1 -- 시작 값 : 맨 처음 실행할 때 딱 한 번만 적용된다. (수정 불가)
INCREMENT BY 1 -- 정수값만큼 증감
MAXVALUE 9999 -- 최대값
MINVALUE 1 -- 최소값
NOCYCLE -- 반복 여부
NOCACHE; -- 캐시 생성 여부
-
검색
SELECT *
FROM USER_SEQUENCES;
-
적용 : 시퀀스명.NEXTVAL
-- 시퀀스값 넣기(NEXTVAL)
INSERT INTO TEST(NO, NAME, NICKNAME)
VALUES(TEST_SEQ.NEXTVAL, '이름', '별명);
-- 현재 시퀀스값 확인하기(CURRVAL)
SELECT TEST_SEQ.CURRVAL FROM DUAL;
-
수정
ALTER SEQUENCE TEST_SEQ
INCREMENT BY 2
MAX VALUE 1000;
-
삭제
DROP SEQUENCE TEST_SEQ;