代码之家  ›  专栏  ›  技术社区  ›  Andrew Bezzub

避免从存储过程返回结果集

  •  11
  • Andrew Bezzub  · 技术社区  · 14 年前

    create procedure test_procedure
    as
    begin
    
        select 1
    
    end
    

    我知道我可以将结果集插入表中,因此调用代码将隐藏它:

    declare @t table(i int)
    
    insert into @t
    exec test_procedure
    

    有没有其他方法可以对调用代码隐藏返回的结果集?

    看来我有点糊涂了。我只寻找T-SQL答案(不是.NET答案)。

    3 回复  |  直到 11 年前
        1
  •  4
  •   Tim Cooper    13 年前

        2
  •  1
  •   Tim Cooper    13 年前

    使用可选的输出参数。

    Create procedure Check @c int
    as
    begin
    if @c = 1
        select 1
    else
        print 1 
    end
    

    编写满足并返回指定值的任何条件。 将该参数用作可选参数,以便不会对过程进行其他更改。

        3
  •  0
  •   Allbite    14 年前

    您愿意尝试通过输出参数返回数据,并返回状态码作为过程的返回值吗?