본문 바로가기
  • AI (Artificial Intelligence)
Skills/Database

[Oracle] Sequence

by 로샤스 2014. 6. 27.

http://www.visualacademy.com/

 

--SQL Server
create table Memos
(
    Num Int Identity(1, 1) Primary Key, -- 번호 => 일련번호
    Name VarChar(25) Not Null,
    PostDate DateTime Default(GetDate())
)
Go

--Oracle
테이블 생성 후 시퀀스(일련번호)를 따로 만들어야 한다.

 

[1] 샘플 테이블 생성
create table Memos
(
    Num Number(4) Primary Key, -- 번호 => 일련번호
    Name varchar2(25) not null,
    PostDate Date Default(SysDate)
);

 

[2] 해당 테이블에 시퀀스 생성
create sequence Memos_seq start with 1 increment by 1;

 

[3] 데이터 입력 : 일련번호 포함
insert into Memos Values(Memos_seq.NextVal, '홍길동', sysdate);

 

[4] 현재 시퀀스가 어디까지 증가되어져 있는지 확인
select Memos_seq.CurrVal from dual;

 

[5] 시퀀스 수정 : 최대 증가값을 1000까지로 제한
alter sequence Memos_seq MaxValue 1000;

 

[6] 시퀀스 삭제
drop sequence Memos_seq;

 

[7] 시퀀스 없는 상태에서 자동 증가값 구현
select Max(Num) from Memos;
insert into Memos values(위에서 만들어진 값, '지리산', sysdate);

 

 

 

 

 

 

 

 

 

 

 

 

출처 : http://blog.naver.com/min9888596/20099753401

 

 

 

 

 

 

 

 

 

 

댓글