代码之家  ›  专栏  ›  技术社区  ›  Ian Boyd

select-exec的Microsoft Connect条目在哪里?

  •  1
  • Ian Boyd  · 技术社区  · 14 年前

    有人能给我指一下 SELECT-EXEC bug,所以我可以投赞成票吗?


    已经10年了,我还在诅咒SQL Server不允许 执行选择 语法,例如:

    SELECT * FROM (
       EXECUTE GetKnownTerroristList @StartDate='2010-01-01', @EndDate='2010-11-01'
    )
    

    CREATE PROCEDURE dbo.GetTransactionsByLCT @LCTGUID uniqueidentifier AS
    
       SELECT * FROM Transactions
       WHERE LCTGUID = @LCTGUID
    
       UNION ALL
    
       EXECUTE DATACENTER.Accounts.dbo.GetTransactionsByLCT @LCTGUID = @LCTGUID
    

    示例3-实际问题

    CREATE PROCEDURE dbo.GetTransactionsByLCT @LCTGUID uniqueidentifier AS
    
       EXECUTE GetTranasctionsByLCT_90 @LCTGUID = @LCTGUID
    
       UNION ALL
    
       EXECUTE DATACENTER.Accounts.dbo.GetTransactionsByLCT @LCTGUID = @LCTGUID
    

    Erland Sommarskog a well-known page of suggested alternatives 但是它们都不是正确的解决方法(即它们不能复制所需的功能)。

    我知道那里 必须 是一个 Microsoft Connect 专门讨论这个问题的条目;自从成千上万的人遇到它。但是 my searches of Connect come up empty .

    有人能给我指一下 执行选择 bug,所以我可以投赞成票吗?


    编辑:Erland解决方案摘要:

    2 回复  |  直到 14 年前
        1
  •  3
  •   Joe Stefanelli    14 年前

    This 是我能找到的最近的一个。

        2
  •  1
  •   devio    14 年前

    为什么不使用 Table-Valued Functions 相反?