1) Nepřidávejte doslovné allfood
objekt na řetězec. SQL nedokáže interpretovat objekt Java.
Metoda by měla být některá z následujících, protože allfood
je celý objekt, potřebujete jej jako parametr. A pojmenovat jej jako date
je prostě matoucí.
totalFat(Date date)
totalFat(String date)
totalFat(Calendar date)
totalFat(int year, int month, int dayOfMonth)
by mělo být
Date=DATE_20170213
2) Ne, opravdu by nemělo, protože Sqlite nepodporuje tento formát dat. Navíc čekající DATE_
jen plýtvá úložištěm ve vaší databázi.
3) Nepoužívejte toto
date= year +""+ month +""+ dayOfMonth
Vytvořte Calendar
objekt a použijte SimpleDateFormat
správně získat řetězec ve formátu data.
pomocí poslední možnosti výše byste měli něco takového
SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar = Calendar.getInstance();
calendar.set(year, month, dayOfMonth);
String queryForDate = fmt.format(calendar.getTime());
// db.query(TABLE_NAME, null, new String[] {... // TODO: Complete this