Hibernate ネイティブ クエリでの MySQL 代入演算子の使用
Hibernate でネイティブ SQL クエリを実行するには、多くの場合、使用できない特定の SQL 演算子と構文を使用する必要があります。 ORM フレームワークによってネイティブにサポートされる必要があります。このような演算子の 1 つは、サブクエリのコンテキストで使用される MySQL 代入演算子 (:=) です。
Hibernate ネイティブ クエリで := 演算子を利用しようとすると、「Space is」のようなエラーが発生する場合があります。パラメータ接頭辞「:」の後には許可されません。」 >
Hibernate 4.1.3 以降のバージョンでは、この問題は解決されています。ネイティブ クエリで「=:」演算子を使用するには、単純にバックスラッシュ () で演算子をエスケープします。パラメータの代わりにリテラル。更新されたクエリ
バックスラッシュ エスケープを使用した更新されたクエリは次のとおりです。「」をエスケープすることで、 =:" 演算子を使用すると、パラメータ プレースホルダーではなく MySQL 代入演算子として解釈するように Hibernate に指示できるため、ネイティブ クエリで演算子を正しく使用できるようになります。
以上がHibernate ネイティブ クエリで MySQL 代入演算子 (:=) を使用する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。