如何在实体框架模型中从模型生成数据库时进行迁移

use*_*807 15 .net entity-framework entity-framework-4 ef-model-first

我有一个现有的模型,最初从这个模型生成数据库,并用一些数据填充现有的表.现在我已经为模型添加了一个新表.有没有办法从新模型更新数据库而不会丢失现有表中的所有数据?谢谢.

Mor*_*avi 21

EF的默认数据库生成工作流创建了一个完整的脚本,每次从模型中选择生成数据库时都会重新创建数据库...因此,如果您在数据库中执行它,您将丢失所有数据.但是,如果您只是创建一个新实体并且没有更改现有实体,那么您仍然可以从模型中生成数据库,但是然后获取该脚本并仅运行为新实体创建新表的部分.

另一种方法是从Microsoft 安装实体设计器数据库生成Power Pack,而不是在EF4.0版本中.安装后,从模型生成数据库时,将数据库生成工作流程更改为生成迁移TSQL:

替代文字