JPA エンティティ マッピングでの予約語のエスケープ
JPA でエンティティをマッピングするときは、データベース内の予約語を考慮することが不可欠です。たとえば、SQL Server では、キーワード「open」をフィールド名として直接使用することはできません。
Hibernate の以前のバージョン (JPA 1.0 プロバイダとして) では、予約されたキーワードはバッククォートを使用してエスケープできました:
@Column(name="`open`")
この構文により、Hibernate は、基礎となるデータベース言語に適切なスタイル (二重引用符など) を使用して、生成された SQL 内のフィールド名を引用符で囲むように強制されました。
JPA 2.0 では、エスケープ構文が標準化されました。
@Column(name="\"open\"")
予約語を二重引用符で囲むことにより、JPA はデータベース内で予約語が正しくエスケープされるようにします。
追加参考資料:
以上がJPAエンティティをマッピングするときに予約語をエスケープするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。