java 调用sqlserver存储过程,提示“没有结果集”

解决Java调用SQLServer存储过程时遇到的'没有结果集'问题,只需在存储过程中添加'SET NOCOUNT ON',该指令用于阻止返回受影响的行数,同时不影响@@RowCount的更新。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

java  调用sqlserver存储过程,提示“没有结果集”,只需要加一句话解决“SET NOCOUNT ON”。

作用:阻止在结果集中返回显示受T-SQL语句或则usp影响的行计数信息。
当SET ONCOUNT ON时候,不返回计数,当SET NOCOUNT OFF时候,返回计数;

即使当SET NOCOUNT ON 时候,也更新@@RowCount;

存过过程:

alter PROCEDURE A_GetAutoNumber
@type varchar(50),
@headname varchar(50),
@datetype varchar(50),
@addtype varchar(50),
@ConNector varchar(50),
@no int
as
declare @headpy varchar(50)
declare @Number varchar(50)
--select @headpy=dbo.fn_getPy(@headname) --,@datetype =cast(year(getdate())as varchar(20))
select @headpy=@headname
if @headname='重庆' select @headpy='CQ'
if @datetype='Y' select @datetype=cast(year(getdate())as varchar(20))
if @datetype='YM' select @datetype=SUBSTRING(CONVERT(varchar(100), GETDATE(),112),1,6)
if @datetype='YMD' select @datetype=CONVERT(varchar(100), GETDATE(),112)
if @addtype='Y'
select @Number=ISNULL(MAX(Number),0)+1 from A_AutoNumber where TYPE=@type and headpy=@headpy and substring(datetype,1,4)=substring(@datetype,1,4) 
if @addtype='M'
select @Number=ISNULL(MAX(Number),0)+1 from A_AutoNumber where TYPE=@type and headpy=@headpy and substring(datetype,1,6)=substring(@datetype,1,6) 
if @addtype='D'
select @Number=ISNULL(MAX(Number),0)+1 from A_AutoNumber where TYPE=@type and headpy=@headpy and substring(datetype,1,8)=substring(@datetype,1,8) 
declare @num varchar(50) select @num=@Number
while len(@Number)<@no
begin set @Number='0'+@Number
end
SET NOCOUNT ON
select @Number=@headpy+@ConNector+@datetype+@ConNector+@Number
select @Number as djsn
insert into A_AutoNumber (type,headname,headpy,datetype,ConNector,no,number)values(@type,@headname,@headpy,@datetype,@ConNector,@no,@num)

exec A_GetAutoNumber 'Approve','重庆','YMD','M','-',4 ;



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值