Merge into Ibatis使用

在ibatis中配置如下:

<statement id="updateResult" parameterClass="com.pojo.search.SearchResult">
		Merge into SEARCH_RESULT s USING DUAL
			ON(s.criteria_id = #criteriaId# and s.deal_id = #dealId#)
		When matched then
			update set s.deal_version = #dealVersion#,
				   s.add_user = #addUser#,
				   s.add_ts = sysdate
		When not matched then
		   INSERT ( CRITERIA_RESULT_ID,
	          	    CRITERIA_ID,
	          	    DEAL_ID,
	          	    DEAL_VERSION,
	          	    IS_CHECKED,
	          	    ADD_USER,
	          	    ADD_TS)
	       VALUES( SEQ_SEARCH_RESULT_ID.nextval,
				   #criteriaId#, 
				   #dealId#,
				   #dealVersion#,
				   #isChecked:VARCHAR#, 
				   #addUser#,
				   sysdate) 
	</statement>


(1)  using dual ,同一張表連接,也可以使用using (select count(*) co from where criterid_id = #id# ) s     on (s.co > 0) ,這樣使用;

(2) <statement id  ,使用statement的方式

(3) java 代碼中使用exector.update("****",paraMap)的方式使用。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章