【发布时间】:2015-06-18 14:49:06
【问题描述】:
我有两个数据库,我想将一些历史数据从一个事实表移动到另一个数据库,目标表与源表完全相同,包括所有约束。
我使用SSIS 包来传输数据,如下所示:
- 首先使用 OLE DB Source 从源中选择所需时间段的数据。
- 使用 OLE DB Destination 将其加载到临时表到第二个数据库中。
-
然后使用 Execute SQL Task 将其加载到最终表中
但我得到以下错误
错误:违反 PRIMARY KEY 约束 'PK__Financia__362B520524BEA57A'。无法插入重复键 对象'Fact.FinancialTransactions'。重复键值为 (100001 , 2010012, 2010 年 12 月 31 日 12:00AM, 65, 88)。
如何解决这个问题?我想将约束保留在目标表中。
【问题讨论】:
-
您需要指定问题所在。您想对重复键做什么?更新现有条目,创建另一个,忽略它?您是否正在复制已经复制的数据?在这种情况下,您可以忽略重复项 - 实际上您根本不应该复制它们。
标签: sql-server