Sql server 2008 针对表中的所有记录运行存储过程
我正在尝试创建一个SSIS包,从Oracle源中提取数据,插入到目标表中,然后根据处理数据的存储过程运行该数据 存储过程具有以下变量:Sql server 2008 针对表中的所有记录运行存储过程,sql-server-2008,loops,stored-procedures,cursor,Sql Server 2008,Loops,Stored Procedures,Cursor,我正在尝试创建一个SSIS包,从Oracle源中提取数据,插入到目标表中,然后根据处理数据的存储过程运行该数据 存储过程具有以下变量: @ShiftID Varchar (50), @ProcedureID int, @Registered int, @Performed int, @Deferred int, @Collected int, @QNS int, @Deleted int, @Intent int, @APH int, @ResultError int output, @R
@ShiftID Varchar (50),
@ProcedureID int,
@Registered int,
@Performed int,
@Deferred int,
@Collected int,
@QNS int,
@Deleted int,
@Intent int,
@APH int,
@ResultError int output,
@ResultMessage varchar(1024) output
我要对其运行该过程的表包含以下列:
Shift_ID
ProcedureID
Registered
Performed
Deferred
Collected
QNS
Deleted
APH
现在我在表中有大约500条记录,我想对所有记录运行这个过程,但我不确定如何执行这个任务
如何将变量分配给表中的特定列,然后让它在整个表中循环或游标
谢谢,您可以在从ssis包插入行的暂存表上使用after Insert触发器 像这样--
CREATE TRIGGER [dbo].[TriggerName] ON [dbo].[yourTableName]
AFTER INSERT
AS
DECLARE @ShiftID VARCHAR(50)
,@ProcedureID INT
,@Registered INT
,@Performed INT
,@Deferred INT
,@Collected INT
,@QNS INT
,@Deleted INT
,@Intent INT
,@APH INT
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT @ShiftID = ins.ShiftID
,@ProcedureID = ins.ProcedureID
,@Registered = ins.Registered
,@Performed = ins.Performed
,@Deferred = ins.Deferred
,@Collected = ins.Collected
,@Pincode = ins.Pincode
,@QNS = ins.QNS
,@Deleted = ins.Deleted
,@Intent = ins.Intent
,@APH = ins.APH
FROM inserted ins
-- TODO: Set parameter values here.
EXECUTE [your Proc Name] @ShiftID
,@ProcedureID
,@Registered
,@Performed
,@Deferred
,@Collected
,@QNS
,@Deleted
,@Intent
,@APH
-- Insert statements for trigger here
END
GO