使用sqlserver官方驱动包调用存储过程遇到的坑及解决方法

发布时间:2025-05-17 01:08:52 作者:益华网络 来源:undefined 浏览量(2) 点赞(2)
摘要:和外部系统做对接,对方提供了一个存储过程,对方为sqlserver数据库,我方为oracle数据库。 需求简单来说就是调用对方的存储过程获得结果,转储到我方库,后续在对数据进行处理。 我写了个代码片段做测试,用jdbc来调用对方的存储过程,可是在调用后就直接报错了,

和外部系统做对接,对方提供了一个存储过程,对方为sqlserver数据库,我方为oracle数据库。

需求简单来说就是调用对方的存储过程获得结果,转储到我方库,后续在对数据进行处理。

我写了个代码片段做测试,用jdbc来调用对方的存储过程,可是在调用后就直接报错了,错误信息如下

com.microsoft.sqlserver.jdbc.SQLServerException: 该语句没有返回结果集

我就不理解了,为啥用数据库连接工具调就没问题呢?是有结果集的呀。

疯狂找资料,找帖子。最后终于是找到了。

解决方法:

换驱动包。对方数据库是SQL server2008,我用的是 sqljdbc4-4.0 。直接换了第三方开源的SQL Server数据库的JDBC驱动程序 jtds1.2。问题解决,调用存储过程的时候不再出错。 在存储过程首行添加 set nocount on (这个我没实验,因为存储过程没在我手里,操作不到)

最后记录一段jdbc调用存储结构的代码,一个参数,返回结果集

?

二维码

扫一扫,关注我们

声明:本文由【益华网络】编辑上传发布,转载此文章须经作者同意,并请附上出处【益华网络】及本页链接。如内容、图片有任何版权问题,请联系我们进行处理。

感兴趣吗?

欢迎联系我们,我们愿意为您解答任何有关网站疑难问题!

您身边的【网站建设专家】

搜索千万次不如咨询1次

主营项目:网站建设,手机网站,响应式网站,SEO优化,小程序开发,公众号系统,软件开发等

立即咨询 15368564009
在线客服
嘿,我来帮您!