2013-06-05 37 views
-1
Exception [EclipseLink-6044] (Eclipse Persistence Services - 2.2.0.v20110202-r8913): org.eclipse.persistence.exceptions.QueryException 

異常描述:從行[DatabaseRecord讀出的主密鑰( => 2)]在查詢執行被檢測爲空。主鍵不能包含null。 Query:ReadAllQuery(referenceClass = ResourceHistory sql = 「SELECT count(1)FROM omm_logs.resource_history e where e.user_id ='f6748e11-6a76-4448-9bf5-af4da5643542'and(e.datetime> ='2013-05- 15 16:29:24'或e.datetime < ='2013-06-05 10:32:25'或e.service_code LIKE'%5%'或e.keyword LIKE'%1%'或e.resource_type LIKE '%1%' 或e.channel LIKE '%1%')」異常說明:查詢的執行期間從該行[DatabaseRecord讀的主鍵被檢測爲空

Query cQry=em.createNativeQuery(query,ResourceHistory.class); 
long count=(Long)cQry.getSingleResult(); 

我使用netbeans的7.0.1,MySQL的5.x的

回答

4

如果你想要的是數據,沒有指定實體類作爲參數傳遞給creatNativeQuery方法。這樣做會迫使JPA嘗試從結果中構建該實體,當實體數據不在其中時,它會給出例外。

+0

非常感謝你...我現在清晰了我也得到了解決方案 –