加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

java-在Hibernate 3.2中没有LONGVARCHAR的映射

发布时间:2021-01-24 10:45:58 所属栏目:编程 来源:网络整理
导读:我正在行使MySQL 5.1运行Hibernate 3.2.0.在MySQL中更新了group_concat_max_len之后(因为group_concat查询超出了默认值),当执行带有group_concat子句的SQLQuery时,呈现以下非常: “ JDBC范例没有方言映射:-1” -1是LONGVARCHAR的java.sql.Types值.显然,增

我正在行使MySQL 5.1运行Hibernate 3.2.0.在MySQL中更新了group_concat_max_len之后(因为group_concat查询超出了默认值),当执行带有group_concat子句的SQLQuery时,呈现以下非常:

“ JDBC范例没有方言映射:-1”

-1是LONGVARCHAR的java.sql.Types值.显然,增进group_concat_max_len值会导致对group_concat的挪用返回LONGVARCHAR值.这好像是此错误的一个实例:

http://opensource.atlassian.com/projects/hibernate/browse/HHH-3892

我猜Hibernate 3.5中有针对此题目的修复措施,但这如故是开拓版本,因此我很踌躇将其投入出产,而且不知道它是否会对我的代码库的其他部门造成题目.我也可以只行使JDBC查询,可是随后我必需用group_concat子句替代SQLQuery的每个实例.

尚有其他提议吗?

最佳谜底 是的,有两个提议.要么:

>修改Hibernate 3.2.0并举办HHH-3892的变动,即获取Hibernate源,应用r16501、r16823和r17332的补丁)并本身构建Hibernate.
>或凭证HHH-1483中的提议行使自界说方言:

public class MySQL5Dialect extends org.hibernate.dialect.MySQL5Dialect {
    public MySQL5Dialect() {
        super();
        // register additional hibernate types for default use in scalar sqlquery type auto detection
        // http://opensource.atlassian.com/projects/hibernate/browse/HHH-1483
        registerHibernateType(Types.LONGVARCHAR,Hibernate.TEXT.getName());
    }    
}

选项2易于实现和测试(我没有),而选项1更“干净”,但必要做更多事变.就小我私人而言,我会选择选项#1,由于这是您将在3.5中得到的,因此可以确保无缝进级.

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读