본문 바로가기
BackEnd-Study/Spring boot

Oracle에서 시퀀스(Sequence) 사용하기

by ChaeLOTUS 2024. 4. 3.
728x90

 

아무래도 이번 프로젝트를 진행하면서 백엔드 쪽을 배우고 있기 때문에 많이 서툴다.

 

데이터를 다룰 때, 각 데이터의 고유 ID가 있다.

부장님이 시퀀스를 이용하라고 하셔서 이것에 대해 기록하고자 한다.

 

 

오라클에서는 자동 증가 컬럼을 사용할 수가 없다. 다른 DB에는 컬럼 자체에 해당 옵션이 있다고 한다.

하지만 오라클에서는 없기 때무에 컬럼의 값을 증가시키기 위해서는 MAX(컬럼) + 1 또는 시퀀스를 사용하여 일련번호를 부여해야한다.

 

오라클 시퀀스 생성

 

 

 

<selectKey keyProperty="kn_arch_id" resultType="int" order="AFTER">
     SELECT arch_info_seq.CURRVAL FROM DUAL  
</selectKey>

 

그리고 마이바티스에서 사용할 땐 위와 같이 먼저 작성해주고 아래에 insert문을 작성한다.

insert문을 작성할 때 id값으로 arch_info_seq.nextval이라고 작성해준다.

 

시퀀스명.CURRVAL : 현재 시퀀스 순번을 가져올 수 있다.

시퀀스명.NEXTVAL : 현재 시퀀스 다음 순번을 가져올 수 있다.

 

728x90

댓글