2010년 7월 6일 화요일

데이터베이스(DB)의 각종 시퀀스 요약

Sequence(시퀀스)

 

- 오라클의 데이터베이스 객체
- 생성문법
  CREATE SEQUENCE 시퀀스이름
    Increment by 증가간격
    Start with 시작값
    Maxvalue 최대값   
    Minvalue 최소값
    Cycle|Nocycle 순환여부(default nocycle)
    Cache|Nocache 메모리 캐쉬여부(default 20)
- SELECT sequence.nextval 은 다음값리턴
- SELECT sequence.currval 은 현재값리턴

- 서브쿼리에서는 사용불가
- 주로 INSERT 의 VALUES절이나 UPDATE의 SET절에서 사용
- INSERT문의 DML SELECT문에서는 사용가능   
- 다음 부여번호를 수정할수 없음


 

Auto Increment(오토인크리먼트,자동증가)

 

- MySQL용 자동 증가값
- 테이블의 컬럼 속성

- 설정된 컬럼은 PK이거나 INDEX이어야 함
- "ALTER TABLE 테이블명 auto_increment=99;" 을 통해서 다음 부여번호를 수정가능함
- last_insert_id()를 통해서 가장최근에 성공한 Insert에 의해 생성된 레코드의 첫번째값을 리턴
  즉 다수의 레코드가 하나의 쿼리를 통해서 입력되면 첫번째 입력된 레코드의 값을 리턴한다

- 생성문법

 CREATE TABLE (column int형테이터타입 NOT NULL AUTO_INCREMENT[=value]

   ....

 PRIMARY KEY(column));

 

 

Identity(아이텐티티)

 

- MSSQL의 자동 증가값
- 테이블의 컬럼 속성
- 테이블당 하나만 존재
- 생성문법

  CREATE TABLE (column numeric형테이터타입 IDENTITY[(seed,increament)] ...);

 

댓글 없음:

댓글 쓰기