所以Hibernate支持最新版本的Firebird,非常棒。 但...
我来到Firebird 1.5.2数据库。我的Grails App通过Hibernate使用这个数据库...到目前为止一切都很棒。
我的应用程序使用我的数据库不知道的函数发送查询。例如,函数LOWER,自2.x以来在Firebird中受支持。
我的问题: 是否可以为我的数据库获取特殊的Hibernate Dialect? 目前我正在使用: dialect =“org.hibernate.dialect.FirebirdDialect”
如何协助我的数据库处理这些未知函数?
答案 0 :(得分:1)
您可以通过继承FirebirdDialect并覆盖应返回不同值的所有函数来创建自己的方言类。
对于需要重命名Hibernate用于小写的函数的简单情况,您只需在Hibernate配置中设置以下内容:
hibernate.query.substitutions toLowercase = mylower
但是,由于Firebird 1.5没有toLowercase功能,您需要自己实现as described in the Firebird documentation。