Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 存储返回多个表的存储过程的结果_Sql_Sql Server_Sql Server 2008_Stored Procedures - Fatal编程技术网

Sql 存储返回多个表的存储过程的结果

Sql 存储返回多个表的存储过程的结果,sql,sql-server,sql-server-2008,stored-procedures,Sql,Sql Server,Sql Server 2008,Stored Procedures,我有一个存储的dbo.usp_GetCustInfo'1','Some Parameter',它返回两个表 作为 表1 DocID DocName 表2 CustID CustName 我想把它存储到临时表中。我可以使用任何语句Insert-into或Select*into 正如这个答案中所指出的,它只在返回一个表时起作用,这听起来像是存储过程中输出参数的作业 我不知道在t-SQL中处理多个结果集的任何可能性,据我所知,t-SQL严格设计为只处理单数结果——而且由于您不能编辑

我有一个存储的
dbo.usp_GetCustInfo'1','Some Parameter'
,它返回两个表

作为

表1

DocID    DocName
表2

CustID     CustName
我想把它存储到临时表中。我可以使用任何语句
Insert-into
Select*into


正如这个答案中所指出的,它只在返回一个表时起作用,这听起来像是存储过程中输出参数的作业

我不知道在t-SQL中处理多个结果集的任何可能性,据我所知,t-SQL严格设计为只处理单数结果——而且由于您不能编辑存储过程本身,因此您应该使用您用来处理SQL信息的语言来处理结果。我可以为ColdFusion提供一个例子,我想大多数其他语言都有类似的方法

<!--- This calls the procedure --->
<cfstoredproc procedure="usp_GetCustInfo" datasource="your_ds">
  <cfprocparam cfsqltype="cf_sql_varchar" value="1" />
  <cfprocparam cfsqltype="cf_sql_varchar" value="Some Parameter" />
  <cfprocresult name="local.table_1" resultset=1 />
  <cfprocresult name="local.table_2" resultset=2 />
</cfstoredproc>

<cfdump var=#local.table_1# title="Result Table 1">
<cfdump var=#local.table_2# title="Result Table 2">


每个人都可以链接到文档。尽量提供一个简单的示例,使您的anser更具信息性。@Weision我无法更改现有的存储过程结构@SagarDumbre您使用哪种语言与SQL Server通信?在某些语言中(我猜实际上在大多数语言中),可以处理一个查询的多个结果。我可以为ColdFusion提供一个例子,我将把它添加到我的帖子中