使休眠反引号所有表/列名称
我面临着为使用MySQL 5.0而编写的遗留系统,现在需要将其迁移到MysQL 5.5(要求)。我发现有一列被命名为,这似乎是MySQL 5.5中的系统词。因此,包含此列的所有Hibernate查询都会给出语法错误:maxvalue
由以下原因引起:java.sql.BatchUpdateException:您的SQL语法中存在错误;检查与您的MySQL服务器版本相对应的手册,以获取在“最大值”附近使用的正确语法
似乎Hibernate不会自动在字段名称周围反向引用' 。如果我提取查询,则反向引用它在MySQL 5.5中正常运行。`maxvalue`
我已经找到了如何显式强制特定字段/表的反引号的解决方案。问题是我不确定有多少其他列名称会产生这样的问题。有没有办法告诉Hibernate自动反引号所有表/列名称?(这将产生有效的SQL,我不知道为什么默认情况下它不会为MySQL执行此操作)。
编辑:这个讨论几乎让我相信我想要的是不可能的。