使用Merge oracle 10g时的主键约束错误

时间:2014-01-29 02:41:33

标签: oracle oracle10g

要求:我有一个巨大的表(比如haivng lacs记录),当我们将三列值组合在一起时,它们具有重复的条目。我的要求是填充具有唯一记录的第二个不同的表(从第一个表中删除重复项)。

对于这个要求,我们必须在第二个表中进行批量插入,我遇到了oracle 10g的MERGE特性,这是批量插入的更优化方式。但是当我尝试这个时,我得到了复合主键的完整性约束错误(我上面提到的三个col)。

MERGE INTO 2ndTable e
USING firstTable h
ON (e.firstCol = h.firstCol and e.2ndCol = h.2ndCol and e.3rdCol = h.3rdCol)
WHEN NOT MATCHED THEN
INSERT VALUES (h.firstCol, h.2ndCol, h.3rdCol);

composite primary key for 2nd Table : e.firstCol, e.2ndCol, e.3rdCol

请让我知道您对此错误的想法或我们处理此批量插入删除重复记录的最佳方式。

0 个答案:

没有答案