前言
在 Visual Studio 透過 Add-Migration
後,
可以透過 Update-Database
將這些 更新到 DB 之中。
那如果想要產生 SQL Script ,再拿 SQL Script 手動更新到 DB 之中呢?
實作
這時可以參考 EF Applying Migrations,
在 Visual Studio 透過 Script-Migration
來產生 SQL Script,
例如要產生最近一次的 SQL Script ,
在 Visual Studio 的 套件管理器主控台 ,預設專案選擇 EntityFrameworkCore 那個專案,
輸入 Script-Migration 前次Migration 這次Migration
,
如果要在 .NET CLI 中執行,則開啟命令視窗,並在 EntityFrameworkCore 那個專案的目錄下,
執行 dotnet ef migrations script
-o 是指定輸出的檔名,如下,
1 | dotnet ef migrations script 20220425092213_add_LicenseAssembly_Deletion_Columns 20230303063806_Upgraded_To_Abp_5 -o abp5.sql |
這樣就可以將這些 SQL Script 手動更新到不同的 DB 之中。
- 註: 如果在 Visual Studio 的 套件管理器主控台 執行時,出現 Build failed. ,那應該是因為整個方案無法建置成功,請將方案建置成功後,再執行命令。
參考資源
EF Applying Migrations
How to resolve persistent “Build started… Build failed.” when trying to run Entity Framework Core commands?