jdbc调用存储过程的问题

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

直接执行navicat 运行sqlserver 可以得到存储过程的结果,
用jdbc调用sqlserver的存储过程但是结果不一样,参数完全一样的情况下。

请专业的java后端来回答

1,存储过程和代码都涉及到事务的话注释掉代码中的事务试试

里面没有事务代码

参数可能不一样。把参数打印出来。
连接的是否是同一个数据库。

首先,你要确认下jdbc方式调用时使用的数据库和直接navicat中调用时是否同一个数据库;其次,jdbc调用时可以把sql语句打印一下,看下实际的sql语句参数和navicat中是否有出入,以免程序调用时包含了隐藏的参数

1、检查数据库连接是否同一个
2、打印代码中的SQL语句,对比Navicat中执行的SQL语句是否一致

可能是存储过程中对空字符串和NULL值处理不一样?
navicat里留空的项传的值和你调用时传的值是一样?

差哪些?存储过程可以贴出来吗? 猜测和楼上一样,与事务,执行顺序有关

把你代码中的参数和得到的结果贴出来看看

你把执行语句打出来,把链接打出来