关于MyBatis调用存储函数,我在网上找到了两种方法。
1.Select方法
<select id="getFunction" parameterType="int" resultType="string">
select dbo.F_NowName(#{0})
</select>
直接select该函数,传入所需参数,即可获取返回值。
参考文档:文章
2.Call方法
<!-- 定义函数 -->
<select id="callFunction" parameterType="map" statementType="CALLABLE">
{
#{p3,mode=OUT,jdbcType=NUMERIC}=call fun_add(
#{p1,mode=IN,jdbcType=NUMERIC},
#{p2,mode=IN,jdbcType=NUMERIC}
)
}
</select>
这个方法之前调试通过了,后来误删后就没在调试通过【笑哭脸】
报错的原因大概是因为参数没有成功注入,以后有机会再去试试。
参考文档:文章