##Řešení
V PostgreSQL musíte zadat název schématu takto:
@Table(name="table_name", schema = "myapp")
^^^^^^^^^^^^^^^^
##Dlouhý příběh
máte tuto chybu:
org.postgresql.util.PSQLException: ERROR: column user0_.id does not exist
protože když vytvoříte databázi v PostgreSQL , vytvoří výchozí schéma s názvem public , takže když nezadáte název v Entity
poté se režim spánku automaticky zkontroluje veřejně schéma.
##Osvědčené postupy
- V názvu
database
nepoužívejte velká písmena ,schema
,tables
nebocolumns
v PostgreSQL . V opačném případě byste měli tato jména ukončit v uvozovkách, což může způsobit chyby syntaxe, takže místo toho můžete použít:
@Table(name="table_name", schema = "schema_name")
^^^^^^^^^^ ^^^^^^^^^^^
- klíčové slovo USER je vyhrazené klíčové slovo v PostgreSQL podívat se na
+----------+-----------+----------+-----------+---------+
| Key Word |PostgreSQL |SQL:2003 | SQL:1999 | SQL-92 |
+----------+-----------+----------+-----------+---------+
| .... .... .... .... .... |
+----------+-----------+----------+-----------+---------+
| USER | reserved |reserved | reserved | reserved|
+----------+-----------+----------+-----------+---------+
- rozdíl mezi Dto a Entita jeho dobrou praxí je použití entity na konci názvu vaší entity, například
UserEntity