강좌
클라우드/리눅스에 관한 강좌입니다.
데이터베이스 분류

자동증가컬럼 사용

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문

자동증가컬럼 사용

 

t.gif
t.gif
unique key를 생성하는 방법은 DBMS마다 차이가 있다. MS-SQL은 IDENTITY를, MySQL은 auto_increment와 같이 쉽게 사용할 수 있는 방법이 있는데 오라클에서는 다음과 같이 유사하게 구현할 수 있다.

SQL> create table t (
  2  seqno number primary key,
  3  id varchar(10),
  4  name varchar(10));

테이블이 생성되었습니다.

SQL> create sequence t_seq;

주문번호가 생성되었습니다.

SQL> CREATE OR REPLACE TRIGGER t_trigger BEFORE INSERT ON t FOR EACH ROW
  2  
  3  BEGIN
  4  SELECT t_seq.NEXTVAL INTO :new.seqno FROM dual;
  5  END;
  6  /

트리거가 생성되었습니다.

seqno컬럼에 무엇을 지정하던(물론 t_seq.nextval는 사용하면 안된다.) 영향을 끼치지 못한다. t_seq.nextval만이 값으로 들어간다.
SQL> insert into t values(NULL, 'maddog','강명규');

1 개의 행이 만들어졌습니다.

SQL> INSERT INTO T(ID, NAME) VALUES('MADDOG','강명규');

1 개의 행이 만들어졌습니다.

SQL> select * from t;

     SEQNO ID         NAME
---------- ---------- ----------
         1 maddog     강명규
         2 MADDOG     강명규

SQL>

This article comes from dbakorea.pe.kr (Leave this line as is)

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,037 명
  • 현재 강좌수 :  35,810 개
  • 현재 접속자 :  120 명