Moh*_*een 8 entity-framework ef-code-first entity-framework-6
在Entity Framework 6中,我需要获取特定迁移文件的SQL脚本,并且我已经更新了数据库.我发现在update-database命令中我可以添加脚本参数将其导出到SQL,但我已经更新了数据库.我在Entity Framework Core中找到了一个Script-Migration以脚本名称作为参数调用的命令.实体框架中是否有类似的命令?
我也尝试了以下,我得到空SQL文件 更新数据库命令
ChW*_*ChW 17
是的,你可以这样做:
Update-Database -Script -SourceMigration: <pointFromWichYouWantToStartWithGeneration> -TargetMigration: <pointWhereToEndWithGeneration>
Run Code Online (Sandbox Code Playgroud)
要为所有迁移创建脚本,请执行以下命令:
Update-Database -Script -SourceMigration: $InitialDatabase
Run Code Online (Sandbox Code Playgroud)
它不会将更改应用于数据库,而是生成SQL脚本文件.因此,即使已将迁移应用于数据库,也可以生成SQL脚本.
在这里,您可以找到有关它的更多信息 - 实体框架代码第一次迁移 - 获取SQL脚本.
运行该
Update-Database命令,但这次指定–Script标志,以便将更改写入脚本而不是应用.我们还将指定源迁移和目标迁移以生成脚本.
如果您现在在 .net core 中,请使用
Script-Migration -From <PreviousMigration> -To <LastMigration>
Run Code Online (Sandbox Code Playgroud)
如果不执行上次迁移,则可以运行
Script-Migration -From <PreviousMigration>
Run Code Online (Sandbox Code Playgroud)
不要在迁移名称中包含日期。如果数据库中的迁移名称类似20210209184835_add-parent-id-to-contract,那么在包管理器中运行以下命令
Script-Migration -From add-parent-id-to-contract
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4836 次 |
| 最近记录: |