ホームページ >Java >&#&チュートリアル >JPA エンティティ フィールドをデータベースの予約語にマッピングするにはどうすればよいですか?

JPA エンティティ フィールドをデータベースの予約語にマッピングするにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-02 14:33:16746ブラウズ

How Can I Map JPA Entity Fields with Database Reserved Words?

JPA のエンティティフィールドとしての予約語のマッピング

JPA での SQL の使用は、データベース方言の予約語と競合する可能性があります。この問題に対処するために、一般的な「独自の方言を使用する」という解決策を避けながら、エンティティ フィールドを予約語でマップする方法を検討してみましょう。

Hibernate のアプローチ

Hibernate では予約語をエスケープできますバッククォート (`) 内にあります。 JPA 1.0 の場合、次を使用します。

@Column(name="`open`")

JPA 2.0 以降の場合、構文は次のとおりです。

@Column(name="\"open\"")

References

  • [Hibernate Reference]ガイド](https://docs.jboss.org/hibernate/stable/orm/reference/en/html_single/#d0e3171)
  • [5.4. SQL 引用符付き識別子](https://docs.jboss.org/hibernate/stable/orm/reference/en-US/html/dialect-options.html#d0e3171)
  • [JPA 2.0仕様](https://docs.oracle.com/javaee/7/api/javax/persistence/Column.html#name())
  • [2.13 データベースオブジェクトの命名](https://docs .oracle.com/javaee/7/api/javax/persistence/Table.html#name())

追加リソース

  • [Hibernate、MySQL、および「Repeat」テーブル](https://stackoverflow.com/questions/18211310/hibernate-mysql-and-table-named-repeat-strange-behavior)

以上がJPA エンティティ フィールドをデータベースの予約語にマッピングするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。