0
我正在使用Spring Boot JPA,没有在application.properties中配置dialect。 在我的输出,我可以看到,Hibernate是为了生成以下DDL命令:Hibernate生成无效DDL(PostgreSQL 9.6)
create table user
(
id int8 not null,
password varchar(255),
username varchar(255),
primary key (id)
)
导致一个语法错误,因为表的名称必须用引号括起来。
这是我的application.properties:
spring.datasource.url=jdbc:postgresql://localhost:5432/springtest
spring.datasource.username=...
spring.datasource.password=...
spring.jpa.hibernate.ddl-auto=create-drop
spring.jpa.show-sql=true
'user'是保留字(关键字)尝试其他名称(或引用它'CREATE TABLE“用户”...') – wildplasser
不要使用需要引用的名称,即使您可以说服您的模糊处理层这样做。使用保留关键字作为标识符时,您会遇到更多问题 –
*迷惑层*确实是正确的术语。例如:你多久看一次语法错误?只是不要相信它。不要依赖它。这是等待发生的破损。 IMnsHO – wildplasser