2011-04-11 38 views
0

我需要调用一个内部函数say'calculateValue(value)',它根据传递的值返回一些字符串。如何通过在ibatis中传递的数据调用函数

<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()作为参数传递的值?

回答

1

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

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

我在第一个地方使用select标签调用存储过程'calculateValue()'是错误的。我现在使用过程标签

相关问题