I\'ve got a situation where I\'m trying to create a table called \'user\' in Postgres, which throws an error due to Hibernate not putting table names in quotes:
This answer might help you: https://stackoverflow.com/a/3611916/947357 It shows how to quote table names in Hibernate and in JPA.
You can quote the table name in the mapping
block with backticks. Hibernate will convert those to whatever the quoting approach is for the database based on the Dialect:
static mapping = {
table "`user`"
}
You can also just rename the table to something else that doesn't require quoting/escaping, e.g.
static mapping = {
table "users"
}
Assuming you're follwing the same tutorial as I do ("Getting started with Grails" by InfoQ) you've already understood it doesn't provide any coverage to PostgreSQL. Based on this post:
class User { String username String password ... static mapping = { table 'users' password column: '`password`' } }
or
class User {
String username
String password
...
static mapping = {
table '`user`'
password column: '`password`'
}
}