[英]Execute SQL Server stored procedure through SSIS
我有這個存儲過程:
CREATE PROCEDURE [dbo].[sp_Carrier_Scan_Compliance]
(@RETAILERID INT OUTPUT,
@SYSTEM_ID VARCHAR(10) OUTPUT)
AS
BEGIN
SET @RETAILERID = 2
SET @SYSTEM_ID = 'DMASOS'
...
END
我已經在控制流中使用Execute SQL Task創建了一個SSIS包。
這些是我的“ 執行SQL任務”編輯器設置:
這是我的變量設置:
這些是我的參數映射設置:
運行SSIS程序包時,出現錯誤:
錯誤:執行SQL存儲過程中的0xC002F210(要復制“ BI-Datatrunk”源表中的數據)任務,執行SQL任務:執行查詢“ exec = [sp_Carrier_Scan_Compliance]?OUTPUT ,? O ...”失敗,並出現以下錯誤:“'='附近的語法不正確。”。 可能的失敗原因:查詢問題,“ ResultSet”屬性未正確設置,參數未正確設置或連接未正確建立。
任務失敗:執行SQL存儲過程(從“ BI-Datatrunk”源表復制數據)
警告:在Carrier_Scan_Compliance_SP處為0x80019002:SSIS警告代碼DTS_W_MAXIMUMERRORCOUNTREACHED。 執行方法成功,但是引發的錯誤數(1)達到允許的最大值(1); 導致失敗。 錯誤數量達到MaximumErrorCount中指定的數量時,會發生這種情況。 更改MaximumErrorCount或修復錯誤。
我不確定我缺少什么。
請幫我。
謝謝
最后一個錯誤的關鍵部分是
對對象'sp_Carrier_Scan_Compliance',數據庫'DATAK',模式'dbo'的EXECUTE權限被拒絕。”
您需要為執行Proc的SQL用戶分配EXECUTE權限
USE DATAK
GO
GRANT EXECUTE ON sp_Carrier_Scan_Compliance TO <sql user>
GO
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.