私のスキーマは、何度も繰り返して進化してきました。スキーマを空のデータベースから数十のテーブルと多数の列を持つデータベースに移行する一連の移行があります。
その過程で、テーブル、列、および制約がいくつか追加され、(経験や新しい知識、または仕様の変更に照らして) 削除または変更が行われることもあります。テーブルまたは列の名前が再利用または転用されている場合があります。
現在、EF 移行は、最新のスキーマに到達するために、作成、変更、ドロップ、再作成、変更などのシーケンスを完全に実行できるように見えますが、それは間違っているように感じます。極端なケースでは、テーブルを作成する数十の移行に続いて、最終的なスキーマが 1 つまたは 2 つのテーブルになるまで、さらに数十のテーブルを削除する可能性があります (可能性は低いと思います)。ゼロからファイナル テーブルに進むという選択肢は、適切に感じられるでしょう。
Ruby で ActiveRecord の移行を行っていた時代には、ステップスルーしたり、途中で作業を元に戻したりやり直したりすることなく、最終的なスキーマのみを構築するオプションがありました。もちろん、これは、移行のたびにスキーマの完全な DDL バージョンを最新の状態に保つことを意味していましたが、どういうわけかより洗練されているように感じました。
Entity Frameworkで似たようなことをした人はいますか?