insert into T_TRANSCORE_TRANS_EXPIRE ( TRANS_ID, EXPIRE_DATE ) values ( '000300',INTERVAL '1' MINUTE) .
这里有一个不好解决的问题,interval后面的 1, 的引号直接加非常困难,
调试过程中常报错:ORA-00917,缺少逗号,因为,ibatis处理后进来的是不带单引号的
需要用另外一种方式实现
<insert id="insertExpireInfo" parameterType="map">
insert into T_TRANSCORE_TRANS_EXPIRED
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="transId != null">TRANS_ID,EXPIRED_TIME</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="transId != null">#{transId},</if>
<if test="minNum != null">SYSDATE + NUMTODSINTERVAL(#{minNum},'MINUTE')
</if>
</trim>
</insert>
这里有一个不好解决的问题,interval后面的 1, 的引号直接加非常困难,
调试过程中常报错:ORA-00917,缺少逗号,因为,ibatis处理后进来的是不带单引号的
需要用另外一种方式实现
<insert id="insertExpireInfo" parameterType="map">
insert into T_TRANSCORE_TRANS_EXPIRED
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="transId != null">TRANS_ID,EXPIRED_TIME</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="transId != null">#{transId},</if>
<if test="minNum != null">SYSDATE + NUMTODSINTERVAL(#{minNum},'MINUTE')
</if>
</trim>
</insert>
本文探讨了在SQL语句中使用Interval时遇到的问题,并提供了解决方案,具体实例为在IBatis框架下如何正确处理带有Interval参数的SQL语句。
1657

被折叠的 条评论
为什么被折叠?



