2013-02-12 35 views
0
Query query = session.createSQLQuery(
"SELECT ColumnName, COUNT(*) FROM xyz GROUP BY ColumnName") 
.addEntity(xyz.class); 
return query.list(); 

但它顯示了我的錯誤。在會話(會議解決不了) 我應該心存感激,如果有人能幫助我執行這個查詢。如何寫SQL查詢本地人在Hibernate中

由於提前

+0

它是一個**的Hibernate Session對象**?請參閱您的導入聲明。 – subodh 2013-02-12 10:26:11

+0

該問題似乎不是來自您的SQL查詢,而是來自您的Hibernate會話。你如何創建/初始化它,確切的錯誤是什麼? – overmeulen 2013-02-12 09:56:07

+0

它顯示在單詞會話和交叉標記上的紅色下劃線,如果你看起來平行於左側,告訴你會話無法解決。 – Saurabh 2013-02-12 10:14:04

回答

0

看來你的Session對象沒有宣佈。

檢查進口也:

import org.hibernate.cfg.Configuration; 
import org.hibernate.SessionFactory; 
import org.hibernate.Session; 

典型的Hibernate Session代碼:

SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory(); 

Session session = sessionFactory.openSession(); 

然後使用您的代碼:

Query query = session.createSQLQuery(
"SELECT ColumnName, COUNT(*) FROM xyz GROUP BY ColumnName") 
.addEntity(xyz.class); 
return query.list(); 
+0

是錯誤已刪除,你是正確的,但仍然無法執行查詢它給控制檯上的錯誤org.hibernate.exception .SQLGrammarException:無法執行查詢 – Saurabh 2013-02-12 10:47:48

+0

如果您可以引導我在.addEntity(xyz.class)中提及什麼,我將非常感激您; //它應該是Getter和setter類或別的什麼。 – Saurabh 2013-02-12 10:56:48

+0

你可以告訴你在ColumnName給出了什麼?它的屬性在XYZ類或sql列名中? – 2013-02-12 10:58:07