Переключение с H2 на PostgreSQL с пружинным чехлом - PullRequest
0 голосов
/ 04 мая 2020

У меня есть приложение весенней загрузки, работающее нормально на базе данных H2. Если я хочу переключиться на postgresQL, я получаю ошибки.

spring.datasource.url=jdbc:postgresql://localhost:5432/postgres
spring.datasource.username=postgres

Ошибки:

org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "drop table if exists 
user cascade" via JDBC Statement
...
Caused by: org.postgresql.util.PSQLException: ERROR: syntax error at or near "user"
...
org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "create table user (id int8 not null, active int4 not null, first_name varchar(255), last_name varchar(255), password varchar(255), role varchar(255), username varchar(255), primary key (id))" via JDBC Statement

1 Ответ

1 голос
/ 04 мая 2020

Я думаю, это потому, что user является зарезервированным словом в Postrge SQL.

Чтобы создать таблицу с таким именем, попробуйте заключить ее в кавычки (то есть create table "user" ... )

Заключение имен всех объектов в «кавычки ANSI», как правило, хорошая идея, если вы хотите обеспечить взаимодействие между различными базами данных.

...