我有一个包含几列的数据库(Android 上的 sqlite):_id、datum、hour、note
数据库是这样创建的:
private static final String DATABASE_CREATE =
"create table worked (_id integer primary key autoincrement, "
+ "datum text not null, hour text not null, "
+ "note text);";
最后,我想从我的数据库中取出总小时数和分钟数,并将其返回给我的 mainActivity。
我试图这样做:
public int getTotalHours(){
Cursor c = db.rawQuery("select hour from " + DATABASE_TABLE, null);
int total = 0;
Date hours = new Date();
SimpleDateFormat hourFormat = new SimpleDateFormat("HH:mm");
c.moveToFirst();
for(int i = 0; i<c.getCount(); i++){
String uur = c.getString(i);
try {
hours = hourFormat.parse(uur);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
total += hours.getHours();
}
return total;
}
但是我的查询中已经出现错误。我也不知道如何以正确的方式提取数据,由于查询错误,我无法测试...
我得到的错误:
无法从具有 5 行 1 列的 cursorWindow 读取第 0 行第 1 列。
我希望我是在正确的方式,并且有人可以帮助我。提前致谢!