gpt4 book ai didi

SQL Server : inserting multi-table output from stored procedure into separate tables

转载 作者:行者123 更新时间:2023-12-03 03:16:20 25 4
gpt4 key购买 nike

我有一个返回多个表的存储过程(当前由 Web 服务使用)。我现在需要将该输出插入到 SQL Server 数据库中。

如果我知道现有定义,我可以插入一个表

INSERT INTO #temp
EXEC ('myProcSQlhere')

但是为此我需要提前知道输出表的定义。

SELECT *
INTO #temp
FROM OPENQUERY(SERVERNAME, 'EXEC myProcSQlhere')

这可以绕过了解表定义,但只允许进入一个表。那么如何向多个表中插入数据呢?

最佳答案

存储过程只能返回一个值。您的存储过程的作用是执行多个选择,从而给出多个结果集。这适用于可以使用多个结果集但您被困在 SQL-Server 中的系统。

检查存储过程是否尚未为每个结果集调用独立的存储过程,如果是,则调用它们。或者使用存储过程的定义并按顺序调用其中使用的每个查询。

如果您无法访问提供存储过程的系统,则需要实现 CLR stored procedurefetch each result set将结果存储到不同的表中。

关于SQL Server : inserting multi-table output from stored procedure into separate tables,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41891440/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com