Hibernate createSQLQuery JOIN抛出异常

时间:2013-03-01 08:52:44

标签: hibernate

我正在尝试使用hibernate从我的数据库的多个表中返回数据。 该查询在我的SQL服务器上运行正常,但它似乎无法在休眠状态下工作。

Query threadQuery = session.createSQLQuery("SELECT CONCAT(t.lastposter) as lastposter, t.lastpost, t.title, t.threadid, t.lastpostid, t.firstpostid, t.forumid, p.pagetext FROM vbulletin.thread AS t INNER JOIN vbulletin.post AS p ON p.postid = t.firstpostid WHERE t.open != 10 AND t.visible = 1 AND t.forumid != 19 AND t.forumid != 20 ORDER BY t.lastpost DESC").setResultTransformer(Transformers.aliasToBean(VbulletinThread.class));

异常

org.hibernate.MappingException: No Dialect mapping for JDBC type: -1

注意:当我从查询中删除p.pagetext时,它工作正常。

1 个答案:

答案 0 :(得分:0)

我弄清楚问题是什么。这与我使用2张桌子的事实毫无关系。

问题是,我需要在SQL查询中强制转换相应字段的值才能使其正常工作。

基本上是这样的:

CAST(p.pagetext as char(255)) as pagetext