如何在ibatis中传递的数据上调用函数

时间:2011-04-11 11:40:07

标签: ibatis

我需要调用一个内部函数,说'calculateValue(value)',它根据传递的值返回一些字符串。

<select id="calculateValue" resultClass="java.lang.String" parameterClass="java.lang.String">
  SELECT calculateValue(#value#) FROM SYSIBM.SYSDUMMY1
</select>

上述查询返回以下错误。

com.ibatis.common.jdbc.exception.NestedSQLException:
--- mymapsql.xml中发生错误 ---执行查询时发生错误 ---检查SELECT calculateValue(?)FROM SYSIBM.SYSDUMMY1 ---检查SQL语句(准备失败) ---原因:java.sql.SQLException:[SQL0418]参数标记的使用无效。

如何在作为参数传递的值上调用函数calculateValue()?

2 个答案:

答案 0 :(得分:1)

使用过程标记<procedure>来调用存储过程。

<procedure id="procId" resultClass="ResultClass"
          parameterMap="getMap">
{ call getResult( #param# ) } 
</procedure>

答案 1 :(得分:0)

我首先使用select标签调用存储过程'calculateValue()'。我现在使用过程标签