SQL Server 2008 R2
SSIS_Foreach 循环容器_Foreach Item 枚举器(循环读取数据库)
1. 首先在两个数据库中创建两个相同的表。下面将演示 将这两个表的数据插入到test2中的一个新表。
select * from test..tb
select * from test2..tb
2. 拖动一个【Foreach 循环容器】和一个【数据流任务】。
3.编辑【Foreach 循环容器】,在选项【集合】中选择【Foreach Item 枚举器】,然后添加一列,完后输入两个数据库的名称。
4. 在选项【变量映射】中 新建变量,定义为【DatabaseName】,索引第一个默认为0 ,即对应选择器集合的第一列。
5.容器设置完成,现在设置数据流。新建【OLE DB 源】和【OLE DB 目标】。
源数据库为test,选中tb表(主要先取到正确的结构);目标就换另一个数据库吧,目标库要新建表格表,根据源表传递的结构;
6.选中源数据库的【连接管理器】,右键属性。选择Expressions 右边的按钮。
7.属性选择【InitialCatalog】,即数据库名称。表达式拖选循环器的变量【User::DatabaeName】
8.确认完成,【OLE DB 源】出现红叉,但是不要紧,直接编译。结果两个表的数据插入到一个新表了!
完成!