私は 2 つの休止状態のエンティティ間に m2m 関係を持っています。それらを映画と俳優と呼びましょう。双方向リンクでセットアップしました。明らかに、これは映画テーブル、俳優テーブル、およびデータベース内の 2 つの間の外部キーの結合テーブルとしてモデル化されています。
UI を使用すると、アクターとムービーの間の関係を更新できます。内部的に、UI は関連する映画と俳優の ID を使用して画面上の更新を追跡し、「保存」を押すと映画 ID と俳優 ID のリストをコントローラーに送信します。
ここで私の質問: データベースで 4 つのアクタを追加してムービーを更新するとします。追加するアクター ID のリストはありますが、UI から ID を受け取っただけなので、実際の Actor オブジェクトはありません。
この更新を行うには、本格的な Actor オブジェクトを 4 つ入力して、それらを Movie オブジェクトに追加し、データベースに保存できるようにする必要がありますか? つまり、最初にデータベースから選択してから更新を行う必要がありますか? 実際に更新されるのは結合テーブルにいくつかの行を追加することだけであり、それを行うために必要なすべての情報を既に持っているため、余分な選択呼び出しを行うのは非効率的です。
したがって、休止状態は、結合テーブル自体にキーを直接追加する便利な方法を提供しますか (カスタムの生の SQL クエリを作成する必要はありません)。