mysql - 表名变为大写

标签 mysql spring hibernate spring-data-jpa

我正在使用 JPA 和 Hibernate5。

我的application.properties有:

spring.jpa.hibernate.naming.implicit-strategy=org.hibernate.boot.model.naming.ImplicitNamingStrategyLegacyJpaImpl
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl

还有我的实体:

@Entity
@Table(name = "document", schema = "test")

当我执行findAll时,返回以下错误:

Table "DOCUMENT" not found; SQL statement: SELECT * FROM document

我无法获取名称属性中所述的实体名称。始终应用“大写”

编辑: 当我尝试排除 HikariCP 依赖项时出现该错误。如果我不禁用依赖项,属性就可以正常工作。

最佳答案

使用反引号定义表名称,如下所示:

 @Table(name="`document`")?

这应该在 hibernate 中工作

关于mysql - 表名变为大写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56664383/

相关文章:

mysql - 具有附加约束的棘手 GROUP BY SQL

c++ - 为什么我使用soci连接postgresql时没有足够的数据库权限?

php - 如果多个准备好的语句之一失败,则停止并恢复

php - 如何检查 session 是否已启动并重定向用户?

java - Hibernate 5 Java双向oneToMany字段为空但表包含数据

java - Spring-mvc 3.0 应用程序 session 范围

java - 具有多个变量的 Thymeleaf URL

java - 在 spring 配置中使用属性

java - Hibernate 单文件数据库 : setup for thin client

oracle - 违反约束异常 ORA-00001