我很好奇是否有办法控制数据库在使用bulk insert命令时如何响应外键和主键约束。具体来说,我将数据插入到employee表(主键为empID)中,该表通过该键(empID)链接到其他表(子项,配偶等)中的数据。鉴于此应用程序背后的逻辑和目的,如果在批量插入期间找到重复的主键,我想执行以下操作:
如果我以通常的方式插入数据,那就是没有批量插入,我认为任务很简单。但是,正如我使用它,我必须承认,我不太确定如何处理这个问题。
我当然不希望任何人为我编写代码,但我不确定它是否可行,如何开始,或者最佳方法可能是什么。或许存储过程,或者更改为模式?
非常感谢任何指导。
答案 0 :(得分:1)
此类问题的常见解决方案是将数据加载到 Staging 表中,可能在其自己的架构甚至数据库中。然后,您将从此临时表中加载实际表,从而允许您以不受限制的方式执行所需的任何逻辑。这样做的另一个好处是可以在加载“真实”表时记录/审核/检查您正在使用的逻辑。