[英]Store result in Execute Sql task
我編寫了一個存儲過程,它將在執行后返回列 BEID、Date_of_txn、Txn_Amount 作為結果。 我在 SQL Server Management Studio 中運行存儲過程時手動獲取結果。 但是我想在 SSIS 中使用“執行 SQL”任務執行這個存儲過程,並且想將結果存儲在一個變量中。 我怎樣才能做到這一點?
我不知道如何將結果存儲在結果集中,因為當我運行包時,包每次都失敗了。
Single Row
OLE DB
LocalHost.Fino_Detail
Exec sp_HighAmount 02, 2019
存儲過程:
CREATE PROCEDURE [dbo].[sp_HighAmount]
(@Month INT,
@Year INT)
AS
BEGIN
SELECT
BEID, DATE_OF_TXN, SUM(Txn_amount) AS Txn_Amount
FROM
Fino_Sales
WHERE
SUBSTRING(Date_of_txn, 6, 2) = @Month
AND SUBSTRING(Date_of_txn, 1, 4) = @Year
GROUP BY
BEID, Date_of_txn
HAVING
SUM(Txn_Amount) BETWEEN 35001 AND 50000
AND SUM(commission_paid) > 350
END
...
group by BEID, Date_of_txn
...
此類查詢返回多行的概率很高,因此應將結果集切換為:“完整結果集”,並將輸出映射到類型為: Object的變量,並通過進一步的foreach
任務遍歷每個排。
一個很好的分步演練可以閱讀: 在 SSIS 完整行集中執行 SQL 任務
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.