を保存しません。テーブルbuses_drivers
は、それらのエンティティすべてのキーを格納します。しかし、Bus
モデルをドライバで保存すると、テーブルは変更されません。私はinverseJoinColmns
マッピングの問題を考える。@ManyToMany関係は、私が<code>@ManyToMany</code>関係を持ついくつかの実体を持って
1
A
答えて
3
これは予想される動作です。双方向多対多関連では、一方の側が逆側でなければなりません。あなたのケースではmappedBy
が含まれているので、Bus
側です:
この関係を所有するフィールド。関係 が単方向でない場合は必須です。
つまり、Driver
はアソシエーションの所有者であり、Hibernateはアソシエーションを維持するときにのみその側をチェックします。
2
あなたの関係を間違いなく再設計する必要があります。
双方向の@ManyToMany
+ CascadeType.ALL
で現在の保存シナリオに問題が発生していない場合でも、さらに問題が発生する可能性があります。
例えば、bus
の1つを削除すると、カスケードするため、すべてのドライバが削除されます。カスケードすると、すべてのバスが削除されます。あなたは基本的には、おそらくあなたが望む以上に多くの削除を終了します。また、これらのマッピングによって生成されたSQLをチェックすると、理想的ではないことに気づくでしょう。
関連する問題
- 1. ManyToMany関係を持つDjangoクエリは
- 2. ManyToMany関係を持つModelForms Djangoのモデル
- 3. ManyToMany関係を持つQueryBuilderとエンティティ
- 4. manytomany関係を持つYii2データプロバイダ
- 5. <...>のための逆の関係は、私は、テーブル、次の関係を持つAを持っている
- 6. @jsonbackreferenceは、私は2つのクラスを持っている関係
- 7. は、私は3つのモデルを持っているhas_many_through関係
- 8. コアデータ:私は三つのモデル持っている関係
- 9. は、私は2つのクラスを持っている多くの関係のAndroid
- 10. Symfony 3&Doctrine - OnetoManyとManyToManyの関係を持つ複雑なフォーム
- 11. JPA ManyToMany固有の属性を持つ関係
- 12. 3つの関係を持つSQL多対多の関係
- 13. BelongsToMany BelongsToMany関係を持つ
- 14. has_many関係を持つModelAdmin
- 15. 関係を持つAuth :: user()?
- 16. は私が持っている多くの関係
- 17. いくつかの親関係を持つコアデータエンティティ
- 18. laravel 4.2雄弁な関係は、私は1の関係を持っている
- 19. Doctrine2 - 3つのテーブルの関係 - 私はこのようになります関係を持っている
- 20. 関係を持つentitesはNHibernateは
- 21. 親ID私はOneToMany関係を持つエンティティ<code>ServiceConfig</code>を持って
- 22. 無関係の関係を持つMERGE句
- 23. MySQLは私は2つのテーブル間の所有関係を持っている
- 24. は、私はMMの関係で3つのテーブルを持っている
- 25. は、私は2列で構成関係を持つ2つのテーブルを持っているJPAは、FKのID
- 26. JPA - 親は私は2つのエンティティを持っているManyToOne関係
- 27. コア・データは、私は2つのエンティティを持っている関係値
- 28. Mavenは、私は2つの依存関係を持っている状態
- 29. Doctrine2が誤って私は2つの教義エンティティ持っ関係
- 30. エンバーコンピュープロパティは、hasManyの関係に更新しないと、私は二つのモデル、他にhasManyの関係を持つものを持っている
、または問題がパーシステンスコードにある可能性がありますか?おそらく投稿すると助けになるだろうか? –