误报的java.sql.SQLException: Parameter number 21 is not an OUT parameter

 今天为了模拟一个mysql内存不释放问题,要测试一个存储过程,同时具有出参和入参,启动时报了上述错误。

<select id="funcl_trd_secu_execution_query" resultMap="result_trd_secu_execution_query" statementType="CALLABLE" parameterMap="param_trd_secu_execution_query">
call prl_trd_secu_execution_query(
?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?
);
</select>

仔细核对,参数数量正确啊。。还特地到服务器端在检查了下。。

眼睛一亮,过程名错了,我去。。

这报错信息太不靠谱了,说实在的mysql不靠谱的地方多了去了,很多在oracle/sql server中理所当然的,在mysql就不能想当然了。

原文地址:https://www.cnblogs.com/zhjh256/p/5753738.html