Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何使用SSI将多个变量循环到一个目标表中_Sql_Ssis - Fatal编程技术网

Sql 如何使用SSI将多个变量循环到一个目标表中

Sql 如何使用SSI将多个变量循环到一个目标表中,sql,ssis,Sql,Ssis,我有三个变量 @Emp = 'Select EmpName from Employee', @Department = 'Select DeptName from Department', @Customer = 'Select Custname from Customer' 我有目的地表 输出: ID tbl_statement 1 Select EmpName from Employee 2 Select DeptName from Department 3 S

我有三个变量

@Emp = 'Select EmpName from Employee',
@Department = 'Select DeptName from Department',
@Customer = 'Select Custname from Customer'
我有目的地表

输出:

  ID tbl_statement
  1   Select EmpName from Employee
  2   Select DeptName from Department
  3   Select Custname from Customer


如何使用SSIS将这三个变量循环到目标表中我建议您使用执行SQL任务来存储这些数据

给定如下所示的目标表

CREATE TABLE dbo.SO_53235748
(
    ID int identity(1,1) NOT NULL
,   tbl_statement nvarchar(max) NOT NULL
,   AsOfDate datetime NOT NULL CONSTRAINT DF_dbo_SO_53235748 DEFAULT (GETDATE())
);
我们将使用OLEDB连接并像这样参数化查询

INSERT INTO dbo.SO_53235748(tbl_statement)
SELECT D.tbl_statement 
FROM 
(
    VALUES(?), (?), (?)
) D(tbl_statement);
是OLE DB连接管理器语法中的占位符。在前面的查询中,它需要3个参数。如果有更多或更少的参数,则需要在第五行中添加/删除元素

在“参数”选项卡中,我们将根据顺序位置(从零开始)将变量映射到参数中


请尝试为SSI中的每个循环任务使用For Each变量循环


谢谢

请提供更多信息。“循环”到底是什么意思?@mohammadmohabati这三个变量我如何迭代到目标表中