错误代码:
List list = session.createSQLQuery("SELECT name FROM test1").list();
或者:
List list = session.createSQLQuery("SELECT * FROM test1").list();
错误信息:
Exception in thread "main" org.hibernate.MappingException: No Dialect mapping for JDBC type: -9
at org.hibernate.dialect.TypeNames.get(TypeNames.java:76)
at org.hibernate.dialect.TypeNames.get(TypeNames.java:99)
at org.hibernate.dialect.Dialect.getHibernateTypeName(Dialect.java:592)
at org.hibernate.loader.custom.CustomLoader$Metadata.getHibernateType(CustomLoader.java:696)
at org.hibernate.loader.custom.CustomLoader$ScalarResultColumnProcessor.performDiscovery(CustomLoader.java:600)
at org.hibernate.loader.custom.CustomLoader.autoDiscoverTypes(CustomLoader.java:616)
at org.hibernate.loader.Loader.getResultSet(Loader.java:2048)
at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:1837)
at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:1816)
at org.hibernate.loader.Loader.doQuery(Loader.java:900)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:342)
at org.hibernate.loader.Loader.doList(Loader.java:2526)
at org.hibernate.loader.Loader.doList(Loader.java:2512)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2342)
at org.hibernate.loader.Loader.list(Loader.java:2337)
at org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:338)
at org.hibernate.internal.SessionImpl.listCustomQuery(SessionImpl.java:1833)
at org.hibernate.internal.AbstractSessionImpl.list(AbstractSessionImpl.java:231)
at org.hibernate.internal.SQLQueryImpl.list(SQLQueryImpl.java:157)
at com.hsbc.gbm.ptutilities.common.util.CSVUtils.preWriteCSVFile(CSVUtils.java:51)
at com.hsbc.gbm.ptutilities.common.util.CSVUtils.main(CSVUtils.java:100)
正确代码:
List list = session.createSQLQuery("SELECT name FROM test1").addScalar("name",StandardBasicTypes.STRING).list();
或者
List list = session.createSQLQuery("SELECT * FROM test1").addEntity(Test1.class).list();