Oracle #3 : 시퀀스 생성(Sequence)

반응형

 

생성 방법

아래와 같은 형식으로 시퀀스를 생성합니다

create sequence 시퀀스이름  start with 시작숫자  increment by 증가량;

 

생성한 시퀀스를 필드에 넣는 명령어는 시퀀스 이름. nextVal로 필드 값에 대입합니다.

insert into 테이블이름 (필드1) values( 시퀀스이름.nextVal);

 

생성 예시

 

알파벳을 넣은 테이블 'ABC'를 만들어 테이블 안에 new_seq와  Alphabet 필드를 넣습니다.

create table ABC(new_seq num(3),Alphabet varchar2(10));

 

new_seq에 필드 값을 삽입하기 위한 시퀀스를 생성하겠습니다.

시퀀스명은 seq로 정하고 2부터 시작해 1씩 증가하는 시퀀스를 생성합니다

create sequence seq start with 2 increment by 1;

 

그리고 차례대로  new_seq와  Alphabet 필드에 만들어진 시퀀스 seq와 Alphabet 값을 하나씩 대입하면 됩니다

insert into memberlist (new_seq, Alphabet ) values(seq.nextVal, 'a' );
insert into memberlist (new_seq, Alphabet ) values(seq.nextVal, 'b' );
insert into memberlist (new_seq, Alphabet ) values(seq.nextVal, 'c' );
insert into memberlist (new_seq, Alphabet ) values(seq.nextVal, 'd' );
insert into memberlist (new_seq, Alphabet ) values(seq.nextVal, 'e' );
insert into memberlist (new_seq, Alphabet ) values(seq.nextVal, 'f' );

위의 코드를 실행하면 아래와 같은 테이블이 생성됩니다.  seq의 시작을 2부터 1씩 증가로 설정했기 때문에

2부터 시작하는 모습을 볼 수 있습니다

new_seq Alphabet
2 a
3 b
4 c
5 d
6 e
7 f
반응형