当前位置: 代码迷 >> Sql Server >> 批量导入数据,外键该怎么办
  详细解决方案

批量导入数据,外键该怎么办

热度:61   发布时间:2016-04-24 09:58:17.0
批量导入数据,外键该怎么处理?
本帖最后由 starsli 于 2014-09-22 12:55:57 编辑
如果批量向一个表中导入数据,表中有外键,而且导入的数据中也包含外键这个字段,这时候该怎么处理?
如果每导入一条数据都要先查下其中外键字段的id,这样效率会不会比较低?
------解决思路----------------------
如果外键的数据不是必须在导入过程中检查的话,可以用alter table 中的 NOCHECK CONSTRAINT临时禁用外键,导入后再启用。

USE AdventureWorks2012;
  GO
  ALTER TABLE Purchasing.PurchaseOrderHeader
  NOCHECK CONSTRAINT FK_PurchaseOrderHeader_Employee_EmployeeID;
  GO

如果外键约束必须在导入过程中体现,那你要先插入子表再插入主表,或者使用级联更新
  相关解决方案