如何将存储过程的输出映射到 SQL 任务中的变量?
How to map the output of the stored procedure to variable in SQL Task?
在 SSIS 包中,我正在执行存储过程 usp_GetResult
,其中 returns 2 行(select PathName, FolderPath from config
)。
PathName : InboundFolderPath
FolderPath : c:\Inbound
PathName : OutboundFolderPath
FolderPath : c:\Outbound
我将不得不映射变量 @InboundFolderPath = c:\Inbound
、@OutboundFolderPath = c:\Outbound
如何将存储过程的输出映射到 SQL 任务中的变量?
我知道的唯一方法是在执行 SQL 任务中使用 "Full Result Set",并将结果存储在对象变量中。
然后使用脚本任务将对象变量转换为数据集,并遍历它以填充标量变量。
我还没有真正尝试过这个,但是怎么样:
Declare @T Table (pathName varchar(100), folderName varchar(100))
Insert @T Exec StoredProc params
Select max(case when PathName = 'InboundFolderPath' then folderName end ) inBound
,max(case when PathName = 'OutboundFolderPath' then folderName end ) outBound
from @T
然后映射
在 SSIS 包中,我正在执行存储过程 usp_GetResult
,其中 returns 2 行(select PathName, FolderPath from config
)。
PathName : InboundFolderPath
FolderPath : c:\Inbound
PathName : OutboundFolderPath
FolderPath : c:\Outbound
我将不得不映射变量 @InboundFolderPath = c:\Inbound
、@OutboundFolderPath = c:\Outbound
如何将存储过程的输出映射到 SQL 任务中的变量?
我知道的唯一方法是在执行 SQL 任务中使用 "Full Result Set",并将结果存储在对象变量中。
然后使用脚本任务将对象变量转换为数据集,并遍历它以填充标量变量。
我还没有真正尝试过这个,但是怎么样:
Declare @T Table (pathName varchar(100), folderName varchar(100))
Insert @T Exec StoredProc params
Select max(case when PathName = 'InboundFolderPath' then folderName end ) inBound
,max(case when PathName = 'OutboundFolderPath' then folderName end ) outBound
from @T
然后映射