特定の列 C をテーブル A からテーブル B に削除するスキーマ変更スクリプトを作成しました。これが私のロジック/アルゴリズムです。
- 列 C がテーブル B にまだ存在しない場合は、追加します。
- 列 C がテーブル B に存在する場合、条件 A.columnZ(Primary_Key) = B.ColumnZ(Foreign_key) で、新しく追加された列の値 (最初は null) をテーブル A の対応する一致する値に更新します。
- テーブル A から列 C を削除します。
私は同じスクリプトを書きました(ただし、単純なものです)。現在、データベースの変更は非常に重要です。これは、本番データベースで実行され、列にユーザーの請求情報に関連する値が含まれているためです。展開に進む前に、それらを完全にテストしたいと考えています。
スクリプトを検証するためのテストケースの提案をしたいと思います。このスクリプトを作成するのはこれが初めてなので、変更スクリプトの作成中に発生する可能性のある問題に関するその他のアドバイスもいただければ幸いです。