【发布时间】:2016-01-28 06:56:10
【问题描述】:
我遇到一个错误如何解决此错误,即
org.hibernate.MappingException: No Dialect mapping for JDBC type: -1
at org.hibernate.dialect.TypeNames.get(TypeNames.java:56)
at org.hibernate.dialect.TypeNames.get(TypeNames.java:81)
at org.hibernate.dialect.Dialect.getHibernateTypeName(Dialect.java:393)
我正在尝试获取该列中的 XML 列数据是 XML 格式
Session session = null;
session = getHibernateTemplate().getSessionFactory().openSession();
Query qu = session.createSQLQuery("select xml from details
where start_date between (select * from(select eventdate from emplyoeevent
where event='logout' and event_id in (select session_id from session
where session_emplyoee='"+Id+"') order by eventdate asc)
where rownum=1) and TO_DATE(SYSDATE, 'DD-MON-YYYY HH:MI:SS PM')");
List li = qu.list();
List li = qu.list(); 行出现错误。
【问题讨论】:
-
-1是java.sql.Types.LONGVARCHAR。您的数据库的休眠方言显然没有这种类型的映射(也许它不支持它)。您使用的是哪个数据库和哪种 Hibernate 方言? -
@Mark Rotteveel:我正在使用 oracle10g,在查询中我尝试 id 替换 xml 工作正常,但 xml 不工作它会引发错误
-
但是您使用的是哪种方言(
Oracle10gDialect或其他方言)? -
是 Oracle10gDialect
标签: java oracle hibernate jdbc