次のように、テーブル'release_group'と別のテーブル'release'があります。
release_group
------------------------
release_group_id (PRIMARY KEY)
name
main_release_id (FOREIGN KEY)
release
------------------------
release_id (PRIMARY KEY)
release_group_id (FOREIGN KEY)
name
リリース行を作成すると、まだ作成されていないため、 release_group_idを使用できません。しかし、main_release_idなしでは release_group 行を作成できません。ですから、仕方のない状況です。
編集: release_group の main_release_id は、リリースがグループのメインであり、参照を使用するものであることを示しています。
このケースを処理する専門的な方法は何ですか?
1.テーブルrelease_groupの外部キー インデックス main_release_idを削除し、属性に ALLOW NULL を指定します。release_group 行を作成して、その ID をリリース行に適用できるようにします。
2. 「main_release_id」外部キー インデックスをテーブル「release_group」に保持し、それに一時的な整数値 0 を割り当てます。リリース行を作成し、それに応じて release_group の外部キーを更新しますか? これが進むべき道である場合、データベースでこの倫理がどうかわからない、値0の外部キーをうっかり持ってしまう可能性があることに注意してください。
このケースを処理する専門的な方法は何ですか?
ありがとう