2010-04-16 60 views
0
Cursor cursor = db.rawQuery("SELECT COUNT(rat) 
           FROM "+ TABLE_NAME_EXTRA +" apkid=\""+apkid, null); 
cursor.moveToFirst(); 
int somatotal = cursor.getInt(0); 

我想要做一個像count和sum這樣的SQL函數,但是這段代碼返回一個異常說「emptyvalues」。SQl函數在android中

有人知道爲什麼嗎?

+0

也許光標是空的? – lbedogni 2010-04-16 15:39:42

+0

怎麼可能? – 2010-04-16 15:41:48

+0

因爲表中沒有行嗎?在運行之前打印出實際的查詢,並嘗試在java/android之外運行它,以確保它按照你的意圖進行。 – 2010-04-16 15:42:36

回答

0

您應該使用DatabaseUtils.longForQuery實用程序方法在db上運行查詢並返回第一行第一列中的值。

int sometotal=DatabaseUtils.longForQuery(db,"SELECT COUNT(rat) 
           FROM "+ TABLE_NAME_EXTRA +" where apkid=\""+apkid+"\"",null);