oracle 的系统时间interval操作,ibatis

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>

你可能感兴趣的:(oracle)