ibatis中的参数语法
Posted
技术标签:
【中文标题】ibatis中的参数语法【英文标题】:parameter syntax in ibatis 【发布时间】:2012-08-02 01:47:25 【问题描述】:ibatis中下面的有什么区别:
当我使用第二种格式时,我得到以下异常 java.sql.SQLException:索引处缺少 IN 或 OUT 参数:: 1
1)
UPDATE TRAN_ITEM
SET BOOK_HNDL_MARK_T=#marksAndNumbers#,
MDSE_CRGO_DESC_T=#cargoDesc#,
UPDT_PGM_I = 'OTM-RTS'
WHERE
TRAN_ITEM_I=#instanceId#
2)
UPDATE TRAN_ITEM SET
BOOK_HNDL_MARK_T='$marksAndNumbers$',
MDSE_CRGO_DESC_T='$cargoDesc$',
UPDT_PGM_I = 'OTM-RTS'
WHERE TRAN_ITEM_I='$instanceId$'
我的DAO如下:
paramMap.put("marksAndNumbers", poItemDetailVO
.getMarksAndNumbers());
paramMap.put("cargoDesc", poItemDetailVO.getCargoDescription());
paramMap.put("instanceId", Integer.valueOf(Long .toString(poItemDetailVO.getInstanceID())));
【问题讨论】:
【参考方案1】:在第二个查询中,您将 (') 放在输入变量之前/之后。
【讨论】:
你的意思是#和$没有区别? 如果您遇到 In OUT 异常..这意味着您没有通过查询发送参数..检查您的实现..共享代码,您执行查询的位置。以上是关于ibatis中的参数语法的主要内容,如果未能解决你的问题,请参考以下文章
ibatis中的resultClass,parameterClass,resultMap,resultType的使用与区别