[SQL SERVER][SSIS]如何使用Store Procedure呼叫SSIS Package
看到網友發問是否能使用Stored Procedure呼叫SSIS?
雖然方法有很多,這裡記錄我自己常使用的方法(Using SQL Agent Job),
也希望對該網友有所幫助。
需求:使用SP呼叫SSIS Package,成功後利用Mail通知DBA。
一、新增 SQL Server Agent Mail(假設該資料庫已啟用DataBase Mail並設定正常)
啟用郵件設定檔
SQL Server Agent=>警示系統,設定完成後請重新啟動Agent
(因為SQL Server Agent 會快取設定檔資訊,所以只要有任何變更就得重啟SQL Server Agent才會生效)。
新增操作員
新增要接受通知的人員:名稱和店子郵件名稱。
二、Create Job
請先確認相關dtsx檔案編譯成功。
填入Job Name。
新增步驟。
選擇SSIS封裝並指定dtsx檔案來源。
確認相關資料來源。
設定通知
選取先前所建立操作員。
目標資料庫
沒有任何資料。
SP內容
ALTER PROCEDURE [dbo].[usp_ExecSSIS]
-- Add the parameters for the stored procedure here
@jobname varchar(30)
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
DECLARE @returncode int
EXEC @returncode=msdb.dbo.sp_start_job @jobname
select @returncode
END
執行SP
執行成功。
確認資料表資料
資料新增成功。
確認信件
訊息:作業成功。