SQL Server2008没有返回结果集

一.产生原因

SQL2005后对SQL语法较为严谨,原本能在2000上跑的语句到了2005或者2008就不行了。一般出现这种情况是因为写的脚本中先进行增删改,最后又通过select想把结果查出来,此时使用executeQuery()就会报错。

二.解决方法

1)方法一:

在你写的SQL中或是存储过程中写上set nocount on 与 set nocount off

set nocount on 
    your sql
set nocount off

2)方法二:

检查你是否在用sqljdbc.jar,或是带1的版本,类似sqljdbc1xxx.jar。马上把它删掉,确保你在用sqljdbc4.jar这个版本的驱动,而且sqljdbc1xxx.jar不能与sqljdbc4.jar同存,同存会导致系统优先使用sqljdbc1xxx.jar,从而引发在执行SQL出现不兼容问题。最好把WEB SERVICE与项目下的lib文件夹都检查一遍。

猜你喜欢

转载自blog.csdn.net/xm393392625/article/details/81781208