0

我有一个存储过程:

create procedure sp_PaymentForm_getAll
as
begin
    begin TRAN

    select * from PaymentForm

    WAITFOR DELAY '00:00:10'

    SELECT * FROM PaymentForm pf where pf.ID = 1

    if @@error <> 0
    begin
        rollback
        return
    end

    commit
end

我在 ADO.NET 中调用此存储过程,但 ADO.NET 获得第一次选择的结果

SELECT * FROM PaymentForm

我想得到第二个结果SELECT

SELECT * FROM PaymentForm pf where pf.ID = 1
4

2 回答 2

4

使用SqlDataReader.NextResult()

于 2012-05-10T09:23:14.553 回答
0

你可以加:

SET NOCOUNT ON;

在您的 SP 的开头,以避免多个结果集。或者,您可以使用reader.NextResult()浏览从您的 SP 返回的多个结果集(如果需要 )

于 2012-05-10T09:22:32.520 回答