Sql server 2008 SISS包(T-SQL任务)至“期间触发通知/错误”;“执行结果”;在不停止执行的情况下,比如php触发“错误”(“xyz”,E“u用户”通知)?

Sql server 2008 SISS包(T-SQL任务)至“期间触发通知/错误”;“执行结果”;在不停止执行的情况下,比如php触发“错误”(“xyz”,E“u用户”通知)?,sql-server-2008,tsql,ssis,Sql Server 2008,Tsql,Ssis,是否可以在SSIS包中生成类似PHP的用户通知(触发器错误(“xyz”,E_User_Notice))以“执行结果” (未显示打印。) 在SSIS包中执行数据流任务后使用的TSQL语句: --T-SQL-- IF @COUNT_A_2 = 0 AND @COUNT_B_2 = 0 BEGIN RAISERROR('Import.A_B', 16, 1) -- ######## USER_NOTICE ################ -- recert.A_B befüllen-- INS

是否可以在SSIS包中生成类似PHP的用户通知(触发器错误(“xyz”,E_User_Notice))以“执行结果”

(未显示打印。)

在SSIS包中执行数据流任务后使用的TSQL语句:

--T-SQL--
IF @COUNT_A_2 = 0 AND @COUNT_B_2 = 0 
BEGIN
RAISERROR('Import.A_B', 16, 1) -- ######## USER_NOTICE ################

--  recert.A_B befüllen--
INSERT INTO  recert.A_B (A_id, B_id)
SELECT K.A_id AS A_id, L.ID AS B_id
FROM dbo.K AS K
JOIN recert.L AS L ON K.B = L.name
WHERE NOT EXISTS (  SELECT * FROM recert.A_B AS D 
                    WHERE D.A_id = K.A_id AND K.B = L.name 
                  )
PRINT 'recert.A_B befüllt. / INSERT.A_B'
[……]


是,但受影响的行数应在SSI中可用。例如,您可以返回SQL语句中受影响的行数,并使用“执行SQL任务”编辑器的ResultSet选项卡将它们加载到变量中

然后,您可以使用以下方法之一使用“脚本任务”触发事件(进度、信息):

Dts.Events.FireProgress
Dts.Events.FireInformation
在控制流中或“执行SQL任务”的OnPostExecute事件处理程序中添加该脚本任务

-- Leeren der Tabellen --
DELETE FROM [testdb].[dbo].[W]

END  
ELSE
BEGIN
    PRINT 'Daten nicht verarbeitet / NO data inserted' 
    RaisError('Daten nicht verarbeitet / NO data inserted',18,1) 
    -- stopps SISS Package. OK.
END
Dts.Events.FireProgress
Dts.Events.FireInformation