设计更新后的数据迁移

时间:2012-01-26 12:02:40

标签: sql entity-framework entity-framework-4

我有一个简单的实体数据模型,其中我有两个实体,它们之间有一个1- *关系。为简化起见,我们假设人和书。 (即人们拥有0本或更多书籍,书籍必须拥有所有者)

系统工作正常,里面有数据。

现在我需要创建从Person继承的其他实体(即学生,教师)

当我创建它们并相应地更新我的软件时,一切都可以正常使用这个新模型。

现在我需要迁移旧数据(人物中链接到书籍的数据) 在我的数据中,我知道哪个人是学生,哪个是老师,我还有关于我将在新模型中放置的学生和教师的其他信息。

问题是如何迁移数据。在删除Person实例之前,我无法添加学生和教师,因为这会在Person中创建重复的Id。我无法删除Person,因为它会产生错误。 (“DELETE语句与REFERENCE约束冲突”)

如何实现此数据迁移。

由于

1 个答案:

答案 0 :(得分:0)

如果您确实有映射继承,则不应删除Person - PersonStudentTeacher,因此您应该添加正确的列(如果是TPH) )或相关表格(如果是TPT)并使用现有数据而不进行修改。

此迁移必须在SQL中完成。