予約キーワードを使用する場合は、テーブル名をエスケープする必要があります。 JPA 1.0では、標準化された方法はなく、Hibernate固有のソリューションはバッククォートを使用することです:
@Entity
@Table(name="`User`")
public class User {
...
}
JPA 2.0では、標準化された構文は次のようになります。
@Entity
@Table(name="\"User\"")
public class User {
...
}
参考資料
- HibernateCoreドキュメント
- 5.4。 SQL引用識別子
- JPA2.0仕様
- 2.13データベースオブジェクトの命名