网上有很多说法,考虑的程度大多都比较深,但新手犯的错误往往都很简单,这里分享一下我总结的经验:
1、在存储过程中添加set nocount on/set nocount off
我曾经调用sql server数据库中的存储过程时遇到过这种情况,set nocount on/set nocount off 的具体作用就不解释了,这上面解释的已经很详细。
https://www.cnblogs.com/heikewudihei/articles/5238972.html
2、对存储过程执行executeQuery方法之后,先获取output 返回信息
这是很多新手非常容易犯的错误,原因是 因为jdbc执行存储过程是先执行存储过程内容 得到结果集 后才会进行 output操作,
所以 先获取output 会导致jdbc 强制结束,发生“结果集已关闭 ” 的错误。
错误:
正确: