我的应用程序在Windows环境中运行良好,但是当我尝试在linux服务器上进行测试时,我遇到了生成JPA EclipseLink sql的问题。 我用小写创建了所有表格,但是当我查看日志时,我看到类似的东西,大写都是大写:
INSERT INTO PFC(ID, ALUMN,PROPOSED_ID) VALUES (?, ?, ?)
以小写形式与其他人(序列)混合:
INSERT INTO buzonmensajes (mensajeid, buzonid) VALUES (?, ?)
bind => [27, 1]
当然,一切都出错了,服务器没有找到大写表等等。
我们使用orm.xml来定义所有数据库操作(查询,实体等)以及它是小写的所有内容......
我知道有一个Mysql参数可以改变这些行为,但不幸的是我不允许改变它。 我的问题是我需要告诉JPA创建所有查询并使用小写的表名插入状态
答案 0 :(得分:5)
问题很可能发生,因为您允许EclipseLink默认某些名称。如果使用数据库的大小写指定名称,则默认情况下EclipseLink应使用这些情况。
如果您发现不起作用,您可以使用“\”'模式@Table("\"pfc\"")
使用分隔标识符来强制执行大小写,但这不是必需的。
您使用的是哪个版本的EclipseLink?