alter proc [dbo].[proc_middle]
@syear varchar(20),
@ident varchar(200)
AS
BEGIN
declare @sql1 VARCHAR(MAX)
exec dbo.proc_A @syear,@ident
exec dbo.proc_B @syear,@ident
set @sql1='select * from tlk_two_schedule where item_years ='''+@syear+''' and '''+@ident+''''
--print @sql1
exec(@sql1)
END
上面的存储过程中调用了其他的存储过程,A,B这两个存储过程的作用是往中间表插入数据的,sql1则是从中间表读取数据的,如果不调用A,B两个存储过程,我页面是能取到数据的,但是调用了A,B的话,就会显示rs.next()错误,我估计是调用了A存储过程后直接就去执行如下图所示的了:

求破解,谢谢
------解决思路----------------------
不太清楚 JAVA为啥是这样
考虑下getMoreResults方法的应用,可能是这个原因
------解决思路----------------------
多步操作的话,很可能会返回多组结果。如果是用COM的ADO组件,需要调用一次或多次下面这个语句,以便取到最后一次结果。
Set rs = rs.NextRecordset()
Java中估计就是#5说的方法了。