org.springframework.orm.hibernate3.HibernateQueryException: unexpected token: 29 near line 1, column



  1. @SuppressWarnings("unchecked")  
  2. public List<Strudent> getStudent(int count) {  
  3.     String hql = "select top "+count+" from Student";  
  4.     return (List<Student>)getHibernateTemplate().find(hql);  
  5. }  

          运行时报如下错误:

org.springframework.orm.hibernate3.HibernateQueryException: unexpected token: 29 near line 1, column 12 [select top 29 from com.paixie.domain.Student];

          原来:在使用hibernate通过session操作数据库时,session根据的查询语句都是hql。如: session.createQuery("from Brand"); 它的语句中不存在select * ,所有如果将hql语句误写成sql语句,它是不认得*号的,才会报那样“unexpected token: * near line 1, column 8”的错。

你可能感兴趣的:(org.springframework.orm.hibernate3.HibernateQueryException: unexpected token: 29 near line 1, column)