Mysql
 sql >> Database >  >> RDS >> Mysql

La query nativa JPA per il campo LONGTEXT in una vista MySQL genera un errore

Questo problema è segnalato in HHH-1483 e HHH-3892 . In breve, Hibernate non sa come mappare un LONGVARCHAR colonna restituita da una query nativa.

Questo problema è stato risolto in Hibernate 3.5.0+. Per le versioni precedenti, una soluzione alternativa sarebbe estendere il MysqlDialect per registrare il corretto Type di ibernazione per un 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());
    }
}