Oracle 的 Hibernate 方言 19

我们的一个数据库已升级到 Oracle 19c,现在我的应用程序无法连接到数据库


我收到以下错误。


HHH000400: Using dialect: org.hibernate.dialect.Oracle12cDialect

HHH000342: 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 的方言吗?


慕田峪9158850
浏览 391回答 2
2回答

qq_遁去的一_1

没有比 12c 更新的方言,并且可以将其与 19c 一起使用,但是 hibernate-orm 中存在一个错误,导致自动检测无法正常工作,请参阅:https://hibernate.atlassian.net/browse/HHH-13184https://hibernate.atlassian.net/browse/HHH-13609在较新的 5.4 版本中已经解决了这个问题,我为 5.3 分支打开了一个 PR。目前的解决方法是手动将 dialect 属性设置hibernate.dialect为org.hibernate.dialect.Oracle12cDialect。

慕娘9325324

请注意,自动检测在Hibernate 6中已更改。因此,org.hibernate.dialect.Oracle12cDialect不应再使用特定于版本的方言(例如 )。请改用此方言org.hibernate.dialect.OracleDialect,并忽略其已弃用的子类:
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java