我正在尝试将平面文件加载到SQL表。我正在使用“缓慢更改维度”来更新现有行并插入新行。 我还使用了“ LOOKUP”来确保仅插入新行。
我的桌子只有两个柱子
SORD-主键(Varchar(50))
CHGAMT-浮动
但是我的ETL失败了,因为它没有选择匹配的行。
我已经针对至少10个其他进口商品执行了此操作,并且一切正常。但是,对于这个特定的文件和表,由于现有的主键,我无法“插入”新记录。但是Lookup应该能够识别并阻止它发生。
这是错误消息:
[插入目标[33]]错误:SSIS错误代码DTS_E_OLEDBERROR。发生OLE DB错误。错误代码:0x80040E2F。 OLE DB记录可用。源:“ Microsoft SQL Server本机客户端11.0”结果:0x80040E2F说明:“该语句已终止。 OLE DB记录可用。源:“ Microsoft SQL Server本机客户端11.0”结果:0x80040E2F说明:“违反了主键约束'********'。无法在对象'******'中插入重复键。重复键值是(OR14878029)。”。
我知道这是什么错误,但是我不知道为什么Lookup不提取该值并将其发送到“匹配的行”而不是“未匹配的行”路径。