In Hibenate我在用MariaDB但我找不到方言类名称MariaDB .
在 Hibernate 中,MySQL 5 方言名称是
<property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property>
对于Oracle 10g
<property name="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</property>
方言类名称是什么MariaDB?
更新说明:Hibernate 自动方言解析
在旧版本的 Hibernate 中,您需要指定方言。但从 3.2 版本开始,hibernate 使用方言解析 https://docs.jboss.org/hibernate/orm/5.0/userguide/html_single/Hibernate_User_Guide.html#portability-dialectresolver自动确定目标数据库和应使用的方言。
The Hibernate 5.0 用户指南 https://docs.jboss.org/hibernate/orm/5.0/userguide/html_single/Hibernate_User_Guide.html#database-dialect says:
在多数情况下Hibernate 将能够通过在引导期间询问 JDBC 连接的一些问题来确定要使用的正确方言。
如果由于某种原因无法确定正确的方言或者您想使用自定义方言,则需要设置 hibernate.dialect 设置。
Hibernate 6.3 用户指南 https://docs.jboss.org/hibernate/orm/6.3/userguide/html_single/Hibernate_User_Guide.html#database-dialect甚至不鼓励您设置该属性:
在 Hibernate 6 中,它是不再需要使用配置属性 hibernate.dialect 显式指定方言,然后设置该属性现在已经气馁了。 (自定义用户编写的方言是一个例外。)
The Hibernate 6.3 API 文档 https://docs.jboss.org/hibernate/stable/orm/javadocs/org/hibernate/cfg/JdbcSettings.html#DIALECT says:
从 Hibernate 6 开始,不应显式指定此属性,除非使用自定义的用户编写的 Dialect 实现。相反,应用程序应该允许 Hibernate 自动选择方言.
很简短的回答
更新答案(2023 年 10 月 5 日):
- org.hibernate.dialect。MariaDB方言对于 MariaDB 服务器10.3 及更高版本
Update: some of these classes are now deprecated or even removed:
- org.hibernate.dialect。MariaDB106方言对于 MariaDB 服务器10.6 及更高版本,提供跳过锁定支持。
- org.hibernate.dialect。MariaDB103方言对于 MariaDB 服务器10.3 及更高版本,提供序列支持。
- org.hibernate.dialect。MariaDB102方言对于 MariaDB 服务器10.2
- org.hibernate.dialect。MariaDB10方言对于 MariaDB 服务器10.0 和 10.1
- org.hibernate.dialect。MariaDB53方言对于 MariaDB 服务器5.3 及更高版本 5.x.
- org.hibernate.dialect。MariaDB方言对于 MariaDB 服务器5.1和5.2.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)