Entity Framework 5 Code First Migrations を使用して、初期 (空の) 状態から最新の移行までの完全なデータベース スクリプトを作成するにはどうすればよいですか?
MSDN ブログのブログ投稿はこれを行うことを提案していますが、空のスクリプトを作成しているようです:
Update-Database -Script -SourceMigration: $InitialDatabase
Entity Framework 5 Code First Migrations を使用して、初期 (空の) 状態から最新の移行までの完全なデータベース スクリプトを作成するにはどうすればよいですか?
MSDN ブログのブログ投稿はこれを行うことを提案していますが、空のスクリプトを作成しているようです:
Update-Database -Script -SourceMigration: $InitialDatabase
API が変更されたようです (少なくとも、私には機能しません)。
パッケージ マネージャー コンソールで次を実行すると、期待どおりに動作します。
Update-Database -Script -SourceMigration:0
ここで終了するエンティティ フレームワークコアを使用しているすべての人に。これがあなたのやり方です。
# Powershell / Package manager console
Script-Migration
# Cli
dotnet ef migrations script
-From
andパラメータを使用し-To
て更新スクリプトを生成し、データベースを特定のバージョンに更新できます。
Script-Migration -From 20190101011200_Initial-Migration -To 20190101021200_Migration-2
https://docs.microsoft.com/en-us/ef/core/managing-schemas/migrations/#generate-sql-scripts
このコマンドにはいくつかのオプションがあります。
移行元は、スクリプトを実行する前にデータベースに適用される最後の移行である必要があります。移行が適用されていない場合は、指定します
0
(これがデフォルトです)。to migration は、スクリプトの実行後にデータベースに適用される最後の移行です。これは、デフォルトでプロジェクトの最後の移行になります。
必要に応じて、べき等スクリプトを生成できます。このスクリプトは、移行がまだデータベースに適用されていない場合にのみ移行を適用します。これは、データベースに適用された最後の移行が正確にわからない場合、またはそれぞれが異なる移行にある可能性がある複数のデータベースにデプロイする場合に役立ちます。