[ Altibase ] <selectKey>

2020. 3. 18. 18:22DB/Altibase

728x90
반응형
SMALL

<selectKey>는 <insert>태그 안에 써서 생성된 키값을 활용할 수 있습니다.\

 

keyProperty에 설정한 이름을 변수로 사용할 수 있습니다. 아래에는 pk로 설정하여 채번한 값을 사용하고 있습니다.

 

type="pre"로 설정하면 insert문보다 먼저 값을 채번합니다.

 

resultClass는 property의 자료형을 입력해 주시면 됩니다.

<insert id="insertAbc">
 INSERT INTO ABC
  (ABC_PK, ABC_VALUE)
 VALUES
  (#pk#, "ABC")
 
 <selectKey keyProperty="pk" resultClass="java.lang.Long" type="pre">
  SELECT SEQ_ABC.NEXTVAL pk FROM DUAL
 </selectKey>
 </insert>

단순한 insert문을 위해 존재하는 것이 아니고 멀티 스레드 상황에서 유용하게 쓰이기 때문에 

단순 insert는 사용할 필요 없이 다음과 같이 사용하시면 됩니다.

<insert id="insertAbc">
 INSERT INTO ABC
  (ABC_PK, ABC_VALUE)
 VALUES
  (SEQ_ABC.NEXTVAL, "ABC")
 
 </insert>
728x90
반응형