[mybatis] oracle insert 리턴값 받기 selectKey
- insert할 도메인에서는 시퀀스값을 설정하지 않는다.
*java
Authors auth = new Authors();
auth .setAutGender("xxx");
...
auth .setAutInfo("xxx");
- 시퀀스값은 autID로 insert하기전에 order="BEFORE" 먼저 실행시켜서 autID에 담는다.
- insert문에서 autID에 설정된 값으로 insert한다.
*.xml
<insert id="insert" parameterType="Authors">
<selectKey resultType="java.lang.String" keyProperty="autID" order="BEFORE">
SELECT SW_LIBRO.F_GET_NEW_AUTHOR_ID FROM DUAL
</selectKey>
INSERT INTO AUTHORS ( AUT_I
D, AUT_GENDER, AUT_NAME, AUT_ENAME, AUT_PROFILE, AUT_INFO, AUT_CREATE_DATE )
VALUES ( #{autID}, #{autGender}, #{autName}, #{autEname}, #{autProfile}, #{autInfo}, SYSDATE )
</insert>
- mybatis 쿼리문 호출 후에 리턴값은 성공시 1, 실패시 0이 된다.
- 그리고 selectKey를 통해서 Authors 담겨진 autID를 받아서 이용한다.
*.java
Integer autID = auth .getAutID();
[mybatis] oracle insert 리턴값 받기 selectKey
'programming > ibatis mybatis' 카테고리의 다른 글
[ibaitis] mysql select PROCEDURE (0) | 2017.01.23 |
---|---|
[mybatis] function 호출하고 리턴값 받기 (0) | 2014.08.04 |
[ibatis] in 조건 생성하기 (0) | 2013.10.17 |
[ibatis] in 조건으로 delete 하기 (0) | 2013.10.02 |
[ibatis] delete sql in 사용 (0) | 2013.06.30 |