ํ๋์ Unique Value ๋ฅผ ์ฌ๋ฌ ํ
์ด๋ธ์ INSERT ํ๋ ๊ฒฝ์ฐ๊ฐ ์๊ธด๋ค.
์๋ฅผ ๋ค์ด ๊ฒ์๊ธ์ ๋ฑ๋กํ๊ณ , ๊ฒ์๊ธ๊ณผ ํจ๊ป ์ฒจ๋ถ๋ ํ์ผ๋ ๋ฑ๋กํ๋ค.
๊ฒ์๊ธ ๋ฑ๋ก ๊ณผ์ ์์ ๊ฒ์๊ธ์ด ์ ์ฅ๋๋ table(๊ฒ์๊ธ1) ๊ณผ ์ฒจ๋ถ๋๋ ํ์ผ์ table(์ฒจ๋ถํ์ผ1) ์ด ์๋ค๊ณ ๊ฐ์ ํ์ ๋,
๊ฒ์๊ธ1์ Unique key ๋ฅผ ์ฒจ๋ถํ์ผ1๊ณผ ํจ๊ป ์ ์ฅํด์ผ ์ ์ผํ ์ฒจ๋ถํ์ผ์ด ๋๋ค.
(์ ์ ํ ์์๊ฐ ์๋ค๋ฉด ์๋ ค์ฃผ์ธ์ :3)
๋๋ฌธ์ key ๋ฅผ ๊ฐ์ ธ์ค๊ธฐ ์ํด์๋ Mybatis ์ keyProperty ๋ฅผ ์ฌ์ฉํ๋ค.
์ฌ์ฉ๋ฐฉ๋ฒ
<insert>
table insert
...
...
...
<selectKey keyProperty="key๊ฐ" resultType="ํ์
" order="์คํํ๋จ">
SELECT
Table colum ์ด๋ฆ
FROM
Table ์ด๋ฆ (+ order by reg_date desc limit 1)
</selectKey>
</insert>
keyProperty |
selectKey๊ฐ ์ํ๋ ์ดํ์ ๊ฒฐ๊ณผ๊ฐ์ด ์ธํ
๋๋ key๊ฐ. |
resultType |
selectKey๊ฐ ์ํ๋ ๊ฒฐ๊ณผ๊ฐ์ type. string ์ด๋ผ๊ฑฐ๋ int ๋ผ๊ฑฐ๋... |
order |
BEFORE ํน์ AFTER๋ก ์ค์ ๊ฐ๋ฅ. selectKey ๊ตฌ๋ฌธ์ ๋จผ์ (BEFORE) ์คํ ํ ๊ฒ์ธ์ง ํน์ ๋์ค์(AFTER) ์คํํ ๊ฒ์ธ์ง๋ฅผ ์ง์ ํ๋ค. |
(SQL๋ฌธ๋ฒ) |
order by reg_date desc limit 1 ์ ๊ฐ์ ์กฐ๊ฑด์ ๊ฑธ์ด์ ์ํ๋ ๊ฐ์ ๋ฝ์๋ธ๋ค. |
board table insert ๋ฅผ ์ํํ ์ดํ, ํด๋น Unique key ๋ฅผ ๋ฆฌํด๋ฐ์ file table insert ๋ฅผ ์ํํ ์ ์๋ค.