我们的一个数据库已升级到 Oracle 19c,现在我的应用程序无法连接到数据库我收到以下错误。HHH000400: Using dialect: org.hibernate.dialect.Oracle12cDialectHHH000342: Could not obtain connection to query metadata : Unable to determine Dialect to use [name=Oracle, majorVersion=19]; user must register resolver or explicitly set 'hibernate.dialect'我搜索了 oracle 19 的方言,但找不到任何 .有适用于 oracle 19 的方言吗?
2 回答
qq_遁去的一_1
TA贡献1725条经验 获得超7个赞
没有比 12c 更新的方言,并且可以将其与 19c 一起使用,但是 hibernate-orm 中存在一个错误,导致自动检测无法正常工作,请参阅:
https://hibernate.atlassian.net/browse/HHH-13184
https://hibernate.atlassian.net/browse/HHH-13609
在较新的 5.4 版本中已经解决了这个问题,我为 5.3 分支打开了一个 PR。
目前的解决方法是手动将 dialect 属性设置hibernate.dialect
为org.hibernate.dialect.Oracle12cDialect
。
慕娘9325324
TA贡献1783条经验 获得超4个赞
请注意,自动检测在Hibernate 6中已更改。
因此,org.hibernate.dialect.Oracle12cDialect
不应再使用特定于版本的方言(例如 )。请改用此方言org.hibernate.dialect.OracleDialect
,并忽略其已弃用的子类:
添加回答
举报
0/150
提交
取消