_id、datum、hour、note という複数の列を持つデータベース (Android では sqlite) があります。
データベースは次のように作成されます。
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 列のカーソルウィンドウから行 0、列 1 を読み取れませんでした。
私が正しかったこと、そして誰かが私を助けてくれることを願っています。前もって感謝します!