【发布时间】:2012-08-14 15:28:16
【问题描述】:
我使用的是 EF 代码首先生成的数据库,它提供一些种子数据,并从其他数据库导入数据(一万行,因此在 EF 中播种没有意义)。为了简化流程,我想我可以只编写整个数据库数据的脚本。因此,如果我需要再次 DropCreate(现在我们使用迁移策略)我的数据库,我可以一次为我的所有数据播种。
但是,SQL Server 生成的脚本会导致大量此类冲突:
INSERT 语句与 FOREIGN KEY 约束冲突...
我可以想象这是因为我们的数据非常复杂,以错误的顺序插入数据会导致这种情况。有什么方法可以让 .sql 脚本在填充表之前忽略/关闭数据库的所有外键约束,然后在插入完成后重新打开它们?插入所有数据后应该没有约束问题。
【问题讨论】:
-
看到这个你可以暂时禁用约束。 stackoverflow.com/questions/159038/…
标签: sql sql-server sql-server-2008 ef-code-first sql-scripts