MSSQL에서 seqnum int IDENTITY (1,1) NOT NULL
이 부분을 오라클에서 해결하고 또 테이블에 적용 및 사용하려면!!

우선 SEQUENCE 를 생성한다!
sqlplus라면 한줄치고 엔터하면 숫자가 나오것져?

Create SEQUENCE 시퀀스명
increament by 증가숫자(보통 1로)
start with 시작숫자(이것도 보통 1로)
maxvalue 끝나는숫자(이건 주기나름) ※ nomaxvalue 이렇게 주면 제한없이 증가값을 줄 수 있다
minvalue 최소값지정(기본값은 1) ※ nominvalue 이렇게 주면 제한없이 최소값을 지정할 수 있다는데..??
cycle 이건 maxvalue를 채웠을때 다시 돌리느냐 초기값으로.... ※ nocycle 하면 안돈다
nochache; <- 요건 쓰긴하는데 첨에어디서 봐서 ㅠㅠ 뭔용도인지 정확하게 모름!!!

create sequence idx
increment by 1
start with 1
nomaxvalue
nocycle
nocache;
이렇게 하면 기본적으로 1부터 1씩증가하는 MSSQL에서 자동증가값과 같은 효과를 얻을 수 있다!
기본적으로 Primary key를 위해서 생성하고 사용하는것이기때문에 보통 이렇게들 쓰시지 않을까 하는데 ㅎ;;

사용자 삽입 이미지

요런 결과를 얻을 수 있다!!!!

시퀀스의 삭제는 DROP SEQUENCE 시퀀스명;
일케 !! 뭐 이건 별로 ㅎ



이제 사용하는방법에 대하여 ! ㅋㅋㅋ

우선 테이블을 하나 맨들고~!

사용자 삽입 이미지

자료를 삽입할때! 사용합니다.!

사용자 삽입 이미지

확인결과 1이라는 숫자가 자동으로 들어갔습니다.~!
※ 시퀀스명.Nextval 하면 전에 값으로 되돌릴수 없고 현재값은 시퀀스명.CurrVal 로 조회가 가능~!
select 시퀀스명.currval from ㅇㅇㅇ; 일케
짠..ㅋㅋㅋ 끝 ㅡㅡ

크리에이티브 커먼즈 라이센스
Creative Commons License
이 글의 관련글

Posted by web20korea

2007/11/08 11:28 2007/11/08 11:28


블로그 이미지

남들 DSLR로 블로깅할때... 오로지 폰카로 버티는 즈질 블로거 ㅋ

- web20korea

Site Stats

Total hits:
44322
Today:
67
Yesterday:
261