开发者社区> 问答> 正文

hibernate中的select列如果有int类型的就会报错?报错

我在项目中使用HQL查询数据时,只要是HQL中的select 后面包含int 类型的列,就会报错,怎么回事,代码如下:


public static void main(String[] args) throws Exception {
        String newSQ = "select frontNum, count from AdvanceQuery";
        Query query = HibernateUtil.getSession().createQuery(newSQ);
        List<Object[]> list = query.list();
        for (Object object2[] : list) {
            for (Object object : object2) {
                System.out.print("\t" + object);
            }
        }
}

其中,frontNum是一个char类型的,count是一个int类型的,只要有这个count,执行这个查询时就会报错,报错信息如下:

Exception in thread "main" org.hibernate.hql.internal.ast.QuerySyntaxException: expecting OPEN, found 'from' near line 1, column 24 [select frontNum, count from zuccess.zcplt.basic.advanced.model.AdvanceQuery]
	at org.hibernate.hql.internal.ast.QuerySyntaxException.convert(QuerySyntaxException.java:91)
	at org.hibernate.hql.internal.ast.ErrorCounter.throwQueryException(ErrorCounter.java:109)
	at org.hibernate.hql.internal.ast.QueryTranslatorImpl.parse(QueryTranslatorImpl.java:304)
	at org.hibernate.hql.internal.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:203)
	at org.hibernate.hql.internal.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:158)
	at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:126)
	at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:88)
	at org.hibernate.engine.query.spi.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:190)
	at org.hibernate.internal.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:301)
	at org.hibernate.internal.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:236)
	at org.hibernate.internal.SessionImpl.createQuery(SessionImpl.java:1800)
	at zuccess.zcplt.basic.advanced.util.ClassUtils.main(ClassUtils.java:39)
我的实体类的信息如下:
private int count;               //记录被点击的次数
private char frontNum;           //是否被置顶,置顶则为1 ,否则为0
对应的xml文件为:
<property name="frontNum" type="char">
            <column name="FRONTNUM" length="1" />
 </property>
 <property name="count" type="integer">
	     <column name="COUNT" length="4" />
 </property>
数据库表中的相应字段为:

请问大神们,谁知道这是为什么?


展开
收起
爱吃鱼的程序员 2020-06-14 14:45:16 502 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    count关键字敲了这么久代码,还是栽倒阴沟里了。<spanstyle="font-size:13.3333330154419px;">count是sql中的关键字

    2020-06-14 14:45:32
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载