如何在存储过程之间共享数据

时间:2009-01-22 13:15:39

标签: sql sql-server stored-procedures

有许多问题与在MS SqlServer中共享另一个存储过程的数据结果有关。

根据SQL Server的版本,人们会建议使用临时表,xml(SQLServer 2005)或表变量(SQL Server 2008)。

Erland Sommarskog撰写了一篇很棒的文章,它提供了全面的答案,并列出了不同版本的SQL中可用的所有选项:

我认为值得分享。

我在reading an answer by deevus建议使用INSERT-EXEC Statement之前发现了那篇文章,这是我之前并不熟悉的事情

1 个答案:

答案 0 :(得分:9)

Erland Sommarskog撰写了一篇很棒的文章,它提供了全面的答案,并列出了不同版本的SQL中可用的所有选项:

  

本文解决了两个相关问题   问题:

     
      
  • 如何使用一个结果集   存储过程也在另一个   表达为如何使用结果   从一个存储过程设置   SELECT语句?
  •   
  • 我怎样才能通过   table作为一个存储的参数   程序到另一个?
  •   
     

在这篇文章中   我将讨论一些方法,   并指出他们的优势   和缺点。一些方法   仅在您要重复使用时才适用   结果集,而其他人适用   两种情况。在你想要的情况下   重用结果集,大多数方法   要求你重写存储的   这种或那种方式,但是   有一些方法没有。