Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

A consulta nativa JPA para o campo LONGTEXT em uma visualização do MySQL resulta em erro


Esse problema é relatado em HHH-1483 e HHH-3892 . Resumindo, o Hibernate não sabe como mapear um LONGVARCHAR coluna retornada por uma consulta nativa.

Este problema foi corrigido no Hibernate 3.5.0+. Para versões anteriores, uma solução alternativa seria estender o MysqlDialect para registrar o Type correto do Hibernate para um LONGVARCHAR :
import java.sql.Types;

import org.hibernate.Hibernate;

public class MyMySQL5Dialect extends org.hibernate.dialect.MySQL5Dialect {
    public MyMySQL5Dialect() {
        super();
        // register additional hibernate types for default use in scalar sqlquery type auto detection
        registerHibernateType(Types.LONGVARCHAR, Hibernate.TEXT.getName());
    }
}