1) Nie dodawaj dosłownego allfood
obiekt do ciągu. SQL nie może zinterpretować obiektu Java.
Metoda powinna być jedną z poniższych, ponieważ allfood
jest całym obiektem, potrzebujesz go jako parametru. I nazywając go date
jest po prostu mylące.
totalFat(Date date)
totalFat(String date)
totalFat(Calendar date)
totalFat(int year, int month, int dayOfMonth)
powinien być
Data=DATE_20170213
2) Nie, naprawdę nie powinno, ponieważ Sqlite nie obsługuje tego formatu dat. Dodatkowo oczekujące na DATE_
po prostu marnuje miejsce w Twojej bazie danych.
3) Proszę nie używać tego
date= year +""+ month +""+ dayOfMonth
Zbuduj Calendar
obiektu i użyj SimpleDateFormat
aby poprawnie uzyskać ciąg w formacie daty.
korzystając z ostatniej opcji powyżej, otrzymasz coś takiego
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