Java JDBC调用SqlServer存储过程 结果集为空

一、问题


用java的jdbc 调用 SqlSever 存储过程报错如下:

报错很明显就是 没有返回结果集, 调用存储过程的代码如下:

String sql = "exec  usp_HKY_LoadConfig '" + date + "'";
Statement ps = conn.createStatement();
ps.setQueryTimeout(queryTimeOut);
ResultSet rs = ps.executeQuery(sql);

while (rs.next()) {
              ...
}

二、解决


存储过程用到了临时表,rs总是没有返回值。这是为什么呢?虽然直接也没有找到原因,但是找到了解决的办法。存储过程开始和结尾分别加上set nocount on和set nocount off

begin
    set nocount on
    
      ...
     set nocount off            
end

加上了  ,完美的查到了结果

猜你喜欢

转载自blog.csdn.net/qq_35995514/article/details/128479416