2

JPA と OpennJPA は初めてです。UserDmoSupplierDmoの 2 つのエンティティがあります。各サプライヤは複数のユーザーを持つことができ、この関係は次のように確立されます。

UserDmoでは、

Column(name="id_supplier")
private long idSupplier;

@ManyToOne(optional=true)
@JoinColumn(name="ID_SUPPLIER")
private SupplierDmo supplier;

ここで、列 ID_SUPPLIER は、SupplierDmo の ID 列によって参照される FK です。これら2つのエンティティを使用して、次のクエリで結果を取得しようとしました.

SELECT u.id, u.modifiedDate FROM UserDmo u JOIN u.idSupplier s WHERE s.id = 1

しかし、エラー メッセージ: エンティティではない変数 "s" からフィールド "s.id" をクエリしようとしました。問題のパスの前に FROM 句の識別変数を付けるのを忘れたのではないでしょうか?

これについてのあなたの助けに本当に感謝します

4

1 に答える 1

1

このようなことを試してください:

SELECT u.id, u.modifiedDate FROM UserDmo u WHERE u.supplier.id = 1
于 2012-10-13T14:44:11.453 に答える