Select insert. 시 sequence 증가되게 0 2 669

by 정우성 [2018.04.25 17:35:32]


Select insert 문을 넣는데 sequence nextval 을 사용하는데 계속 증가되는 값을 넣고 싶은데 방법 있을까요 ?

by 신이만든지기 [2018.04.25 18:26:45]

1. 시퀀스를 대신해서 연속한 번호(중간에 빠지는 번호 없게)를 사용하고자 할 때, 흔히 사용하는 방법은 MAX + 1 입니다. 

2. 시퀀스에 옵션으로 ORDER 나 NOCACHE  를 사용하면, 중간에 빈값이 생기는 것을 최소화 할 수 있습니다.

채번하는데 부하가 예상된다면 시퀀스를 쓰는 것이 제일 좋습니다. 

 


by 우리집아찌 [2018.04.26 10:23:19]

마이그레이션처럼 일회성 작업이시면 MAX+ ROWNUM 등으로 작업하시고 시퀀스 수정하시면됩니다.

ALTER SEQUENCE  seq_empno  INCREMENT BY 1000 ;    -- 시퀀스를 1000(현재SEQUENCE + INSERT ROW수)증가로 수정

SELECT seq_empno.NEXTVAL FROM DUAL;                   -- 시퀀스를 1000 증가

ALTER SEQUENCE  seq_empno  INCREMENT BY 1 ;         -- 시퀀스를 다시 1씩증가로 수정

http://www.gurubee.net/lecture/1037

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입