如何使用Entity Framework 5 Code First Migrations创建从初始(空)状态到最新迁移的完整数据库脚本?
MSDN Blog上的博客建议这样做,但它似乎创建了一个空脚本:
Update-Database -Script -SourceMigration: $InitialDatabase
答案 0 :(得分:263)
API似乎已经改变(或者至少,它对我不起作用)。
在程序包管理器控制台中运行以下按预期方式运行:
Update-Database -Script -SourceMigration:0
答案 1 :(得分:8)
为了补充Matt wilson的答案,我有一堆代码优先的实体类但没有数据库,因为我没有采取备份。所以我在我的Entity Framework项目上做了以下事情:
在Visual Studio中打开Package Manager控制台,然后键入以下内容:
Enable-Migrations
Add-Migration
为您的迁移命名,例如' Initial'然后创建迁移。最后输入以下内容:
Update-Database
Update-Database -Script -SourceMigration:0
最后一个命令将从您的实体类创建数据库表(假设您的实体类格式正确)。
答案 2 :(得分:1)
适用于所有使用实体框架核心的人。这就是你的方法。
# Powershell / Package manager console
Script-Migration
# Cli
dotnet ef migrations script
https://docs.microsoft.com/en-us/ef/core/managing-schemas/migrations/#generate-sql-scripts