問題タブ [hibernate-criteria]
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.
hibernate - Hibernate Criteria - ネストされた子をフィルタリングする方法は?
以前の質問の言い回しが悪かったのではないかと心配しているので、明確にするために新たに始めています。
各テーブル間に OneToMany 関連付けが存在する多数のテーブルを想像してください。Farm -> Field -> RegionGroup -> Region . Region.nutritionでフィルタリングする Criteria クエリを作成しようとしています。最上位レベルの属性でフィルタリングし、場合によっては次のレベルを下回っている人々の例をたくさん見てきましたが、4 層の深さでフィルタリングするときにクエリを作成する方法がわかりません。現時点ではこれがありますが、機能しません。
何が起こるかというと、目的の結果を正しくカバーするプライマリ SQL クエリが生成されます (取得する必要があるデータのセットとまったく同じです)。ただし、返されたオブジェクトを反復処理すると、RegionGroup -> Regionの関連付けが制限を含まない各反復のサブクエリなので、 RegionGroup の値に関係なく、 RegionGroup のすべてのRegionsを取得します。
関連付けパス「fields.regionGroups.regions」に対して指定された制限を適用するには、何を追加する必要がありますか?
EDIT:次のHQLは私が求めていることを行いますが、私が求めている定義の柔軟性がないため、基準クエリに変換したいと思います。
List<Farm>
このように反復できる出力が得られます。
では、これを Criteria クエリとして指定するにはどうすればよいでしょうか。やりたいことを実行していることを証明するために、単純に HQL を変更して Region.nutrition の制限を削除すると、RegionGroup ごとにすべての Region が返されます。
結果を反復するコードに変更を加えることなく、次のようになりました。
hibernate - 関連エンティティの主キーを使用して結果をフィルタリングするHibernate基準クエリ
私たちのシステムでは、データベースは次のようになります
1つのエージェンシーには多くのブローカーがあり、1つのブローカーには多くのユーザーがいて、1つのユーザーには多くの注文があります。
Hibernate基準を使用して、指定された証券会社のユーザーのすべての注文を検索しようとしています。プレーンSQLでは、これは非常に簡単です。基準APIでこれを行うことはできますか?条件APIは、クリックアンドフィルタータイプのuiを使用する場合に特に効果的であることがわかりました。これは、順序付けされていない制限のリストを作成して、それらを基準に追加できるためです。
現在、これは機能しません
「原因:org.hibernate.QueryException:プロパティを解決できませんでした:user.brokerage of:com.printlogix.rp.server.domain.UserOrder:」というメッセージが表示されます。
「object.parentobject.property」のようなパラメータ名をRestrictions.eqに渡すことはできますか?
hibernate - Hibernate基準クエリ
私は次のクエリSQLクエリを持っています:
これは私がこれまでに書いたものです:
最初の角かっこ内に「and」と「or」を書くにはどうすればよいですか?
java - 子供に制限のある休止状態の基準
1つのSQLステートメントで実行したいHibernate基準呼び出しがあります。私がやろうとしているのは、外部結合を使用して子をロードしているときに、値の範囲(SQL IN句)のプロパティを持つ子を持つParentのインスタンスを選択することです。これが私がこれまでに持っているものです:
サンプルデータは次のとおりです。
私がやりたいのは、子の1つが私のバインドパラメータと等しいプロパティを持っている場合、親とそのすべての子を返すことです。プロパティが{2}を含む配列であると仮定しましょう。この場合、呼び出しは親AとCを返しますが、それらの子コレクションには要素2のみが含まれます。つまり、Parent [Children]:
A [2]&C [2]
私が欲しいのは:
A [0、2、7]&C [1、2 3]
これがバグでない場合は、セマンティクスが壊れているようです。A.getChildren()またはC.getChildren()を呼び出して、1つのレコードを返すことが正しいと見なされる方法がわかりません。これは、予測ではありません。つまり、デフォルトのselectフェッチを使用するようにクエリを拡張すると、適切な子コレクションが返され、多数のクエリが返されます。
これはバグですか?そうでない場合、どうすれば希望の結果を達成できますか?
hibernate - ジャンクションテーブルの Hibernate 基準 - 作成方法は?
次のような3つのテーブルがあります。
商品名
-----------
id
名
カテゴリー
----------
id
名
product_category
.----------------------
p_id
c_id
製品のカテゴリが id=3 である製品のリストを取得したいと考えています。これを書く方法について混乱していますhibernate criteria
。どんな助けでも大歓迎です。
ありがとう
java - 次の SQL の基準は何ですか?
次のクエリの基準を教えてください。
私は次の基準で試しています
上記の条件により、両方のテーブル データが取得されます。
また、TableA の特定の列のみが必要な場合、基準はどのように変更されますか?
御時間ありがとうございます。
編集: TableA は TableB と 1 対多の関係にあります。
hibernate - HIbernate Criteria Restrictions.in
Restrictions.in を使用しているときに Hibernate Criteria に問題があります。制限に送信されたリストに値が含まれていない場合、SQL GrammerException がスローされます。これは、クエリが次のようになるためです。
select * from Person p where p.id in ()
Hibernate ログのエラー ---
Spring ログのエラー...
そして、それを引き起こしているコードは
これをやってみましたが、テーブル内のすべての値が返されます。これは、私が望むものとは完全に反対です..リストサイズが0の場合、何も返されません..
リストに例外ではなく値が含まれていない場合にクエリから結果が得られないようにするには、ここでどのような変更を加える必要がありますか...事前に感謝します!
java - Hibernate 基準クエリのインターセプト
データベースから情報を取得するために Hibernate SessionFactory を使用しています。問題は、以下の「encrypted_field」データベース フィールドが暗号化され、SQL クエリが壊れることです。
これは、Hibernate に変換しようとしている古い SQL クエリです。
Hibernate でこれを修正する方法はありますか? Hibernate が「order by」基準を ResultSet に適用する直前に「encrypted_field」を復号化できる Hibernate Interceptor を考えています。これは可能ですか?
java - Hibernate:この基準をHQLに書き換えるにはどうすればよいですか?
HQLを作成したいのですが、会社に名前の付いた人(従業員)がいるかどうかを調べます。私は基準でそれを行うことができました:
さて、HQLについても同じようにお願いします。名前付きクエリを使用していますが、名前付きクエリのパラメータとして配列または文字列のリスト(またはその他)を渡す方法に問題があります。これが私の試みですが、ATMでは機能しません。
ClassCastExceptionが発生します
query-param名に間違ったタイプを指定したため、これは正常です。何を置けばいいのかわからない:/
このサービスをよりよく理解するためのテストケース:
つまり、「jon」または「josh」のいずれかがsomeCompanyで機能するということです。
手伝ってくれてありがとう
編集
JB Nizetは、service.namesInCompanyのコードを提案しました。ここにあります:
grails - GORM:ilkeとinListの組み合わせ
Grailsでは、DynamicFinderを使用して、ilikeとinListを使用してクエリを実行するにはどうすればよいですか?または、CriteriaBuilderを使用してilikeとinListを組み合わせることができますか?ありがとうございました!