Database/Oracle
Oracle 자동 증가 컬럼(Sequence) 사용
denodo
2013. 2. 6. 12:59
Unique Key를 생성하는 방법은 DBMS마다 차이가 있다.
MS-SQL은 IDENTITY를, MySQL은 auto_increment와 같이 쉽게 사용할 수 있는 방법이 있는데 오라클에서는 Sequence를 사용하여 다음과 같이 유사하게 구현할 수 있다
------------------------------------------------------------------------------------------
1. 자동증가컬럼을 사용하고자 하는 MYTABLE테이블을 생성한다.
CREATE TABLE MYTABLE
(ID NUMBER, NAME VARCHAR2(20));
2. CREATE SEQUENCE 라는 문장을 사용하여 SEQ_ID라는 이름의 시퀀스를 만든다.
CREATE SEQUENCE SEQ_ID INCREMENT BY 1 START WITH 10000;
-- INCREMENT BY 1 : 증가값은 1
-- START WITH 10000 : 10000부터 증가
3. 테이블에 데이터 입력시에는 NEXTVAL이라는 슈도 칼럼(Pseudo-column)을 이용하여 시퀸스를 사용한다.
INSERT INTO MYTABLE VALUES( SEQ_ID.NEXTVAL, '홍길동');
-- CURRVAL : 현재 값을 반환 합니다. .
-- NEXTVAL : 현재 시퀀스값의 다음 값을 반환 합니다.
------------------------------------------------------------------------------------------