私は、PostgreSQL を使用して学校のプロジェクトに小さな Java アプリケーションを開発しています。
JDBC ドライバーを使用すると、 を使用してフィルターを連結する代わりに、~
演算子を使用してフィールドを選択することができました。CONTAINING
LIKE
例を挙げましょう:
SELECT * FROM USERS WHERE NAME ~ ? ORDER BY NAME
~
開発を容易にするために JPA フレームワークの使用を開始して以来、JPA を使用した同じサンプルでオペレーターを使用するとエラーがスローされることに気付きました...
スローされたエラー:
An exception occurred while creating a query in EntityManager:
Exception Description: Syntax error parsing [select u from Users u where u.name ~ ?1 order by u.name].
[30, 41] The expression is not a valid conditional expression.
Google で見つけたすべてのコード サンプルは、LIKE
代わりに を使用して作成されていCONTAINING
ます。
私の質問は、PostgreSQL を使用する場合、JPA は包含演算子をサポートしていますか?
いくつかの情報:
JDK 15
Netbeans 12.3
JPA 2.1
PostgreSQL 13.2