【问题标题】:Hibernate dialect for Oracle Database 18c?Oracle Database 18c 的休眠方言?
【发布时间】:2019-04-18 15:19:28
【问题描述】:

Oracle Database 18c 是否有 Hibernate 方言?还是应该使用 Hibernate 附带的 org.hibernate.dialect.Oracle12cDialect

在使用 Hibernate 5.3 和 Oracle 18c RAC 时,应用程序有什么特别需要注意的吗?

【问题讨论】:

  • Oracle 18c 本质上是一个 12.3,只是具有“现代”命名方案。所以Oracle12cDialect 应该可以正常工作
  • 这对你有用吗?我对 oracle 19 有同样的问题
  • @NullPointerException 是的,它对我有用,但我不能自信地建议这对每个人都有效。
  • 5.3 及更低版本中存在错误。我必须升级到 5.4 版才能让它工作有人回答我here
  • 尝试使用 Oracle12cDialect 和 Oracle 18 DB。得到错误Could not fetch the SequenceInformation from the database。这个stackoverflow post 会帮助我。 Oracle Sequance 最大值对于 Java Long 来说太大的问题

标签: hibernate oracle-rac oracle18c


【解决方案1】:

在使用最新版本的 Hibernate (5.4.10) 撰写此评论时,Hibernate 中没有 Oracle18 的官方方言

当Database方言没有大的区别时,Hibernate中通常不会为他创建一个特殊的方言。

例如,我在生产环境中使用 Oracle11 的 Oracle10 方言没有大问题。 Oracle 18 也是一样,Oracle12 方言应该可以正常工作。

请记住,Oracle 版本号不再像过去那样编号,现在它们与发布年份相关(因此较大的数字并不完全意味着您的方言发生了重大变化)。

关于 Oracle 数据库版本号:release number

作为评论,如果您不使用 Oracle 18 的新特性,也有可能将 Oracle 配置为与某个以前的版本(本例中为 11 或 12)兼容。但是,如果可以通过自定义方言或修改您的软件来解决,建议不要使用此配置。

关于Oracle数据库兼容参数:compatible parameter

我希望这可以帮助其他正在寻找相同的人。

【讨论】:

    猜你喜欢
    • 2020-01-03
    • 2015-10-20
    • 2021-06-07
    • 2020-10-05
    • 2011-05-21
    • 1970-01-01
    • 2020-05-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多