【发布时间】:2019-11-26 01:11:59
【问题描述】:
尝试通过 SSIS ETL 作业插入表中不存在的记录时,我收到“无法在对象中插入重复的键行”错误。但是,当我使用“where”子句来指定作业所抱怨的确切记录时,不会出现此错误。
例如,我会收到主键错误(100、200、300)。我已经确认源表中不存在此组合,因此我知道该级别不存在错误。但是,当我放置一个 where 子句过滤源表以使第一个主键字段值只有“100”的记录时,作业运行没有错误。这可能是缓冲区问题还是环境问题?
【问题讨论】:
-
不,这不会是缓冲区或环境问题。第一个键的数据类型是什么,如果是整数那么'100','0100'会一样。
-
您可能试图在插入时插入 2 个或更多具有相同键的记录。错误消息是相同的,即使它们都没有被插入。
标签: sql-server indexing ssis ssms etl