■예 9_1_1 || SEQUENCE 생성 예
CREATE SEQUENCE INSA_SEQ
MINVALUE 1
MAXVALUE 33
INCREMENT BY 3
START WITH 28
NOCACHE
NOORDER
NOCYCLE
;
■예 9_1_2 || SEQUENCE 사용 예
INSERT INTO INSA (SABUN, NAME, ENG_NAME, HP, JOIN_GBN_CODE)
VALUES (INSA_SEQ.NEXTVAL, '홍길동', 'HONG', '010-1234-5678', 'RGL');
INSERT INTO INSA (SABUN, NAME, ENG_NAME, HP, JOIN_GBN_CODE)
VALUES (INSA_SEQ.NEXTVAL, '이순신', 'LEGEND', '010-1234-1234', 'RGL');
SELECT ROWNUM,T1.*
FROM( SELECT SABUN, NAME, ENG_NAME, HP, JOIN_GBN_CODE
FROM INSA
WHERE JOIN_GBN_CODE='RGL'
ORDER BY SABUN DESC) T1
WHERE ROWNUM <= 2;
■예 9_1_3 || SEQUENCE 사용 예
____CREATE TABLE____ INSA_1(
SEQ_NO NUMBER CONSTRAINT TEST_SEQ_NN NOT NULL,
SABUN VARCHAR2(10),
JOIN_DAY DATE,
CONSTRAINT INSA1_PK PRIMARY KEY(SABUN)
);
CREATE SEQUENCE INSA_SEQ1
MINVALUE 1
MAXVALUE 10
INCREMENT BY 2
START WITH 2
CYCLE
;
INSERT INTO TEST_SEQ VALUES(INSA_SEQ1.NEXTVAL, :SABUN, SYSDATE);
■예 9_1_4 || INSA_SEQ 수정
ALTER SEQUENCE INSA_SEQ
INCREMENT BY 2
MAXVALUE 9999999999;
■예 9_1_5 || INSA_SEQ 수정 후 적용
INSERT INTO INSA (SABUN, NAME, ENG_NAME, HP, JOIN_GBN_CODE)
VALUES (INSA_SEQ.NEXTVAL, '박준형', 'LIM', '010-1111-2222', 'RGL');
■예 9_1_6 || SEQUENCE 삭제
DROP SEQUENCE SEQUENCE_NAME;
DROP SEQUNECE INSA_SQL;
■예 9_1_7 || SEQUENCE 확인
SELECT * FROM USER_SEQUENCES;