1
我将数据批量加载到MS SQL中。为了有效地做到这一点,我暂时禁用表上的FK约束(一个表8约束,所有这些约束都具有级联删除“Set NULL”)。在我重新启用约束检查之前,我需要检查无效的外键并将它们设置为NULL。批量加载后删除无效的FK数据
我该如何去实现这个目标?谢谢。
我将数据批量加载到MS SQL中。为了有效地做到这一点,我暂时禁用表上的FK约束(一个表8约束,所有这些约束都具有级联删除“Set NULL”)。在我重新启用约束检查之前,我需要检查无效的外键并将它们设置为NULL。批量加载后删除无效的FK数据
我该如何去实现这个目标?谢谢。
UPDATE MyMainTable
SET TableAID = CASE WHEN TableA.ID IS NULL THEN NULL ELSE TableAID END,
TableBID = CASE WHEN TableB.ID IS NULL THEN NULL ELSE TableBID END,
FROM MyMainTable
LEFT JOIN TableA ON MyMainTable.TableAID = TableA.ID
LEFT JOIN TableB ON MyMainTable.TableBID = TableB.ID
工程精彩,感谢一百万。 – Daniel 2012-02-09 19:01:53