AFAIK, Hibernate doesn’t maintain a list of reserved keyword (per database) so I think you should look at database identifier escaping.
If you are using Hibernate 3.5+, try hibernate.globally_quoted_identifiers=true
to quote all database identifiers (this is something they added for JPA 2.0, see the secion 2.13 Naming of Database Objects of the spec for the JPA way to activate this if you are using JPA).
Prior to version 3.5, Hibernate doesn’t offer any configuration option for global escaping. Implementing a custom NamingStrategy
to escape everything transparently would be the recommended way.
See also
- Database independant Column/Table name escaping?
- HHH-2578 – redesign SessionFactory building – my understanding is that fixing this issue would make automatic escaping of keywords (through dialects) possible.