Postgres (dříve, u novějších si nejsem jistý) převádí názvy tabulek na malá písmena. To je preferovaný operační postup. Pokud zaznamenáte své dotazy, uvidíte, že hibernace může nebo nemusí citovat název vaší tabulky (hádám, že není).
Hibernace ukládajícího uživatelského modelu na Postgres
Upřímně řečeno, pokud používáte Postgres, měli byste buď správně nakonfigurovat hibernaci, nebo, jak bych se na to podíval, normalizovat vaši databázi, protože tabulky by neměly mít kolize jmenného prostoru (čímž se problém odstraní).
//Z článku...
@Entity
@Table(name="\"User\"")
public class User {
...
}
UPRAVENO 31. 7. 2012:
Tato změna musí být provedena v polích tabulek následujícím způsobem:
Pro @Column
, změňte název sloupce přidáním escape ":
@Column(name = "\"C_MODEL\"")
Pro @JoinColumn
, změňte název sloupce přidáním `:
@JoinColumn(name = "`TP_MODEL`")
Budete to muset udělat ručně ve sloupcích, které vám dávají chyby.