<insert id="insertSubject" parameterType="wBMap">
<selectKey keyProperty="sn" resultType="int" order="BEFORE">
SELECT SBJECT_MASTR_SEQ.NEXTVAL FROM DUAL
</selectKey>
INSERT INTO SBJECT_MASTR (SBJECT_MASTR_SN, SBJECT_NM, SBJECT_CODE, SBJECT_CTGRY, EDC_TRGET, SRCHWRD, USE_YN, CM, REGIST_DT, REGIST_MBER_SEQ)
VALUES (#{sn}, #{sbject_nm}, 'ES'||LPAD(#{sn}, 6, 0), #{sbject_ctgry}, #{edc_trget}, #{srchwrd}, #{use_yn}, #{cm}, SYSDATE, #{mber_seq})
</insert>
์ค๋ผํด ๊ธฐ์ค์ ๊ธ์ ๋๋ค.
<selectKey> ํ๊ทธ๋ฅผ ์ด์ฉํ์ฌ ํ์ฌ ์ํ์ค ๋ค์์ ์ํ์ค๋ฅผ ๊ฐ์ ธ์ฌ์ ์์ต๋๋ค.
ใ ฃSELECT SBJECT_MASTR_SEQ.NEXTVAL FROM DUAL
SBJECT_MASTR์ ๋ค์ ์ํ์ค๋ฅผ ๊ฐ์ ธ์ค๊ธฐ ์ํจ์ ๋๋ค. mysql์ auto increment ์๊ฐํ๋ฉด ๋ ๊ฒ ๊ฐ์ต๋๋ค. DUAL์ ์์ ํ ์ด๋ธ์ ๋๋ค.
๋ง์ฝ ํ์ฌ ์ํ์ค๋ฅผ ๊ฐ์ ธ์ค๊ณ ์ถ๋ค๋ฉด CURRVAL์ ์ฌ์ฉํ์๋ฉด ๋ฉ๋๋ค.
# keyProperty
keyProperty๋ SELECT SBJECT_MASTR_SEQ.NEXTVAL FROM DUAL ์ ๊ฐ์ ๋ฐ๋ ๋ณ์์ ๋๋ค. ์์ ์ฝ๋์์๋ keyProperty = sn ์ด๋ฏ๋ก ๋ค์ ์ฟผ๋ฆฌ๋ฌธ์์ sn์ผ๋ก ์ํ์ค ๊ฐ์ ์ ๊ทผํ ์ ์๊ฒ ๋ฉ๋๋ค.
# order
order ๋ INSERT ๋ฌธ์ ์คํํ๊ธฐ ์ ์ ํ ๊ฑฐ๋ ํํ์ ํ ๊ฑฐ๋ ๊ฒฐ์ ํด์ฃผ๋ ๊ฒ์ธ๋ฐ before ์ด๋ฏ๋ก ์ฟผ๋ฆฌ๋ฌธ ์คํ์ ์ ๋๋ค. after๋ก ํ๊ฒ๋๋ฉด ์ฟผ๋ฆฌ๋ฌธ์ ์คํํ ํด๋น ์ฟผ๋ฆฌ๋ฅผ ์คํํฉ๋๋ค.
# resultType
resultType์ ๋ณ์๋ช ์์ ์์ ์๋ฏ ๋ฐํ๊ฐ์ ๋ฐ์ดํฐํ์ ๋๋ค.
<selectKey> ํ๊ทธ ๋ง๊ณ ์ ์ด๋ฏธ์ง์ฒ๋ผ VALUES์ ๋ฐ๋ก SEQ.NEXTVAL๋ฅผ ํด๋ ์๊ด์์ต๋๋ค.
์ฝ์ด์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.
์ง๋ฌธ์ ์ธ์ ๋ ํ์ํฉ๋๋ค.
"๋ ๋ฐ๋์ ๋ฐฑ์๋ ์์ด ๋ ๊ฑฐ์ผ"
'...' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Java] HashMap ์ฌ์ฉํ๊ธฐ (0) | 2020.12.30 |
---|---|
[Java] StringUtils.isEmpty ์ฌ์ฉํ๊ธฐ (0) | 2020.12.30 |
[Spring] ์ธ์ ์ ์ด์ฉํ ๋ก๊ทธ์ธ ๊ตฌํ (0) | 2020.12.28 |
[JS] ์ฟ ํค๋ฅผ ์ฌ์ฉํด๋ณด์ (4) | 2020.12.28 |
[JS] ๊ฐ๋ฐ์๋๊ตฌ ์ฝ์์์ response ๊ฐ ์ถ๋ ฅํ๊ธฐ (0) | 2020.12.24 |