我有两个实体类 Member 和 EvaluationType。它们是关系表。

成员 :

@ManyToOne
@JoinColumn(name = "evaluationId")
private EvaluationType evaluationType;

评估类型:
 @OneToMany(mappedBy = "evaluationType", cascade = CascadeType.ALL)
 private List<Member> memberList;

当我运行应用程序时,我收到以下错误:

错误代码:1215
调用:ALTER TABLE MEMBER ADD CONSTRAINT FK_MEMBER_evaluationId FOREIGN KEY (evaluationId) REFERENCES EVALUATİONTYPE (evaluationId)
查询:DataModifyQuery(sql="ALTER TABLE MEMBER ADD CONSTRAINT FK_MEMBER_evaluationId FOREIGN KEY (evaluationId) REFERENCES EVALUATİONTYPE (evaluationId)")

错误是“EVALUATİONTYPE”表名。因为mysql中没有大写的表名。我怎样才能解决这个问题?

最佳答案

另一种选择是在数据库本身中设置区分大小写。检查 https://dev.mysql.com/doc/refman/5.0/en/identifier-case-sensitivity.html
lower_case_table_names=1 将以小写形式存储所有表名,并使名称比较不区分大小写。
但是@Table 注释也应该起作用。所以这取决于你。

关于java - Eclipselink Mysql 表名大写,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30312557/

10-10 22:50