시퀀스(Sequence)
: 시퀀스란 자동으로 순차적으로 증가하는 순번을 반환하는 데이터베이스 객체
시퀀스는 우클릭 후 새 시퀀스에서 만들어 줄 수도 있고, →
쿼리로 만들어 줄 수도 있다. ↓
CREATE SEQUENCE SEQ_TEST
INCREMENT BY 1
START WITH 1
MAXVALUE 10000
MINVALUE 1;
쿼리와 이미지 똑같은 시퀀스를 생성함
1. 시퀀스 예제 1
SELECT SEQ_TST.NEXTVAL FROM DUAL;
시퀀스 명.NEXTVAL 실행 시 시퀀스 생성/편집 시 주는 증가값만큼 계속 증가됨
2. 시퀀스 예제 2
SELECT SEQ_TST.CURRVAL FROM DUAL;
시퀀스 명.CURRVAL 실행 시 현재 시퀀스 값을 확인할 수 있다.
3. 시퀀스 예제 3
CREATE TABLE SEQ_TEST_TBL
(
IDX NUMBER(5) PRIMARY KEY,
TXT VARCHAR2(100) NOT NULL
);
INSERT INTO SEQ_TEST_TBL VALUES (SEQ_TST.NEXTVAL, '홍길동');
INSERT INTO SEQ_TEST_TBL VALUES (SEQ_TST.NEXTVAL, '전우치');
SELECT * FROM SEQ_TEST_TBL;
상단 쿼리 실행 시 시퀀스 값이 1이었으므로 2,3 으로 나타남
4. 시퀀스 예제 4
DELETE FROM SEQ_TEST_TBL WHERE IDX = '3';
INSERT INTO SEQ_TEST_TBL VALUES (SEQ_TST.NEXTVAL, '전우치');
SELECT * FROM SEQ_TEST_TBL;
테이블 데이터 삭제 후 재입력시 시퀀스 값이 3이었으므로 4로 나타남
'Database' 카테고리의 다른 글
[ SQL ] FUNCTION(함수) (0) | 2021.05.01 |
---|---|
[ SQL ] WHERE EXISTS, NOT EXIST (0) | 2021.05.01 |
[ SQL ] EXCEPTION - 예외 처리 (0) | 2021.04.30 |
[ SQL ] VIEW - 메모리 상에 존재하는 테이블 (0) | 2021.04.30 |
[ SQL ] MERGE INTO - INSERT & UPDATE 한번에 하기 (0) | 2021.04.29 |