エンティティ フレームワークでコード ファースト マイグレーションを使用しています。数回の移行前に作成された、整数値を格納する「必須」とマークされた Amount という列があります。これは 10 進数である必要があると言われました。コンテキストでデータ型を変更して Add-Migration を実行すると、期待どおりに移行ファイルが作成されます。
Update-Database を実行すると、次のエラーが表示されます
オブジェクト 'DF_ Products _ProductsTrack__522F1F86' は列 'Amount' に依存しています。ALTER TABLE ALTER COLUMN 1 つ以上のオブジェクトがこの列にアクセスしているため、Amount が失敗しました。
これを手動で行うために、いくつかのカスタム SQL を作成することができました。
ALTER TABLE Products
DROP CONSTRAINT [DF__Products__ProductsTrack__522F1F86]
GO
ALTER COLUMN Amount decimal(18,2)
ただし、移行の一環としてデータ型を変更する必要があるため、これは良くありません。依存関係は、最初に割り当てられた「必須」属性が原因であると想定して書いていますか? 「通常の」移行手法を使用してタイプを変更するにはどうすればよいですか?