如何使用 SSIS 将多个表中的数据插入到多个表中?
Posted
技术标签:
【中文标题】如何使用 SSIS 将多个表中的数据插入到多个表中?【英文标题】:How to insert data from multiple tables to multiple tables by using SSIS? 【发布时间】:2017-08-28 03:55:16 【问题描述】:我正在使用 SQL Server 2008 R2。我在数据库中有将近 106 多个表,现在我需要将这些表中的数据加载到另一个数据库中。
源数据库和目标数据库的表结构相同。数据库中有一个状态表,所有表都有一个主键 ID 字段。所有表都有主键和外键关系。
状态表包含表的ID字段,另一列包含该ID已完成任务的相关ID字段的状态。
我需要传输那些 ID 号将与 ID 状态为 1 或类似的状态表匹配的数据。我还需要插入 Identity 列,并且由于所有表都有 PK 和 FK 关系,所以我必须将数据插入到具有引用约束的表中。
所以,我的问题是:为了实现上述场景,我如何使用 SSIS 将数据从多个表加载到多个表,因为它不是一次性的。
【问题讨论】:
Copy data between two server instances的可能重复 不能只使用存储过程吗? 这里有备份/恢复选项吗? 【参考方案1】:状态表的想法不明确。i hv 160+ 表然后状态表将包含什么?举个例子。
你当然要从图表/流程开始
假设
table1 id pk
table2 id pk (table1 id fk)
table3 id pk (table2 id fk)
insert into table1
insert into table2
insert into table3
在我的示例中,由于 FK 约束,您不能首先惰性进入 table3。 这种方式首先你要创造流量。
【讨论】:
状态表包含表的ID字段,另一列包含该ID已完成任务的相关ID字段的状态。和你说的表格图,我的情况也一样。以上是关于如何使用 SSIS 将多个表中的数据插入到多个表中?的主要内容,如果未能解决你的问题,请参考以下文章
如何从单个控制器将数据插入到 laravel 中的多个表中?