問題タブ [many-to-one]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
4196 参照

hibernate - Hibernate:作業を多対1のオブジェクトと一時的にマージしますか?

こんにちは私はそれを知っており、マージの前にテストすると、オブジェクトがセッションに再接続され、オブジェクトがセッションに存在しなくなったときに遅延初期化例外が発生するのを防ぎます。

a。)それで私はいくつか質問があります。

私が支払い->顧客(多対1の一方向の関係で)と私がする場合

支払い支払い=Payment.class.cast(session.merge(oldPayment));

顧客オブジェクトもセッションに再接続されますか、それとも顧客に対して別のマージ呼び出しを行う必要がありますか?

b。)支払い->顧客(多対1の双方向関係)の場合はどうなりますか。何が起こるだろう。

c。)3つ以上の階層の関係がある場合はどうでしょうか。
例:ホテル->支払い->顧客。

Hotel hotel = Hotel.class.cast(session.merge(unmergeHotel))を実行した場合、支払いと顧客オブジェクトもセッションにマージされますか?

ありがとう

0 投票する
1 に答える
787 参照

hibernate - 多対 1 アノテーションの休止状態と削除時のエラー

私は注釈付きのこのBeanを持っています(関連するものを示しています):

すべて mySQL にマップされます。

prodottoDiRiferimento プロパティが null に設定されているこれらの Bean の 1 つを削除し、他の Bean は prodottoDiRiferimento を持っている場合、次のようになります。

私が望むのは、prodottoDiRiferimento プロパティを持つ削除されたものを指すすべての Bean も削除されることです。

どうやってするの?

0 投票する
1 に答える
1062 参照

oracle - ManyToOneとOneToManyを1つのエンティティで休止状態にする

私は3つのテーブルUniversity(id、name)、Group(id、name、university_id)、Student(id、name、number、group_id)を持っています。1つの大学には多くのグループがあり、1つのグループには多くの学生がいます。

私のPOJOは次のようになります。

私のヘルパークラス:

そして、私は得る

何かを保存または表示しようとするとき。助けてください。

0 投票する
2 に答える
331 参照

mysql - MySQL ORDERBYはGROUPBYで無視されます(効率的な回避策?)

これには簡単な解決策があると思います。StackOverflowで他の質問を調べましたが、非効率的であるか、間違っている可能性があります。

これが私が扱っているテーブルの簡略化されたバージョンです。

多対1の関係があります-1つのオブジェクトあたりの多くのオブジェクト値(オブジェクトあたり平均150のオブジェクト値)

object_group_idに基づいて、各object_idの最後のオブジェクト値(date_timeフィールドで決定)を取得したいと思います。

現在のクエリ:

これにより、すべてのレコードがプルバックされます-GROUPBYを実行した場合。object_idその後、ORDERBYは無視されます

私は一連のバリエーションを試しましたが、これはよくある質問であることを知っているのでお詫びしますが、他の解決策を試すことは今のところうまくいきません。どんな助けでも大歓迎です。

一部のソリューションは、約70秒後に結果を返しました。これは大規模なシステムであるため、少し高速にする必要があります。

0 投票する
1 に答える
2993 参照

nhibernate - NHibernateの多対1マッピング:親がnullの場合、外部キーをnullではなく空のGUIDとして設定します

私がやろうとしていることは本当に非常に単純ですが、NHibernateで正しくマッピングを行うことができないようです。

親オブジェクトと子オブジェクトを含むデータベースに取り組んでいます。子オブジェクトには、データ型Guidの親の主キーへの外部キー参照があります。いずれにせよ、かなり正常です。これで、データベースは外部キーフィールドがnullにならないように設定されているため、親がない孤立したオブジェクトの場合、外部キーは空のGUID( '00000000-0000-0000-0000-000000000000)である必要があります。 ')。

私がNhibernateをセットアップする方法は長い間うまく機能してきましたが、最近、関係を双方向にし、問題が発生し始めました。明らかに、NHibernateは親がnullであることを認識し、nullを外部キーフィールドに保存しようとしますが、それは許可されていません。

私が使用しているリレーションシップマッピングの構造の例を以下に示します。

親側のマッピング:

子側のマッピング:

私はさまざまなプロパティを試してきましたが、役に立ちませんでした。insert="false"およびupdate="false"プロパティを使用する必要がありますか?使用する場合、関係を正確に維持するにはどうすればよいですか?

助けてくれてありがとう。

0 投票する
1 に答える
1349 参照

.net - Hibernate の多対 1 および双方向アクセス

これらのテーブル間に双方向の関係を持たせるには、どの HBM を作成する必要がBlogありますか? 両方から 試しましたが、次の問題に遭遇しました(おそらく、完全に間違っていたためです):Post

many-to-one

  • オブジェクト グラフを 1 つに挿入するときに一時的な永続性エラーが発生しましたSession
  • BlogPostテーブルが相互に参照している場合の外部キーの問題。

:私の例は不自然です。設計について議論しないでください。

デザイン:

デザイン


ソース:


HBM:

必要な DB 構造:

0 投票する
4 に答える
1254 参照

hibernate - 1対多または多対1を使用します

2つのクラス:

部門タスク

1つの部門が多くのタスクを持つことができます。1つのタスクは1つの部門にのみ属することができます。

では、1対多または多対1を使用しますか?



多対1


違いは何ですか?

ところで、セットとリストの使用の違いは何ですか?

そして、list(xml構成)を使用した例?

0 投票する
0 に答える
170 参照

hibernate - CompositeUserTypes で多対 1 の関連付けを使用する方法

多対一の関連付けを含む CompositeUserType の使用方法に関するサンプルはありますか? 「nullSaveGet」メソッドで受け取った外部キーを対応する関連付けられたエンティティに変換する方法は?

前もって感謝します

0 投票する
4 に答える
731 参照

c# - NHibernateは、Order->Customer関係にバッチ処理またはCriteriaAPIを使用せずにN+1を解決できますか?

私はこの答えを白黒で見つけるために読んで周りを見回してきました。

Customerおなじみの問題について話しましょう Order。100個の注文をロードし、各注文が1人の顧客にのみリンクされているとします。

Fluent NHibernateを使用References()して、をリンクOrderするために使用し、およびCustomerを定義します。Not.LazyLoad()Fetch.Join()

今私は仮説的に考えています。NHibernateはこれらの2つのテーブルを単純に結合でき、エンティティを水和するのは非常に簡単です。ただし、私のテストでは、常にN + 1クエリ(実際には一意のIDのみ)が表示されます。コードとテーブルを共有することはできますが、退屈する可能性があります。

  • Order-> Customer(one->oneまたはMany->One)のN + 1を克服することは可能ですか?または、バッチ処理またはCriteria APIを使用する必要がありますか?
  • 可能であれば、流暢なNHibernateの例を教えていただけますか?
0 投票する
2 に答える
819 参照

grails - Grailsは遅延ロードなしでIDを多対1で公開しますか?

Grails - オブジェクト全体のロードを強制せずに、多対一の関連付けプロパティの ID を公開するにはどうすればよいですか?

User オブジェクト全体の遅延読み込みを行わずに、Task から User ID を取得できますか? 一般的にこれを行う方法はありますか、それともクラスごとにカスタムクエリが必要ですか? これには、実際には BlazeDS を介して返される DTO オブジェクトが含まれます。必要なのは、関連付けられたオブジェクトではなく、ID だけです。