1) Non aggiungere un allfood
letterale oggetto a una stringa. SQL non può interpretare un oggetto Java.
Il metodo dovrebbe essere uno dei seguenti perché allfood
è l'intero oggetto, ne hai bisogno come parametro. E nominandolo come date
è semplicemente confuso.
totalFat(Date date)
totalFat(String date)
totalFat(Calendar date)
totalFat(int year, int month, int dayOfMonth)
dovrebbe essere
Date=DATE_20170213
2) No, in realtà non dovrebbe perché Sqlite non supporta quel formato di date. Inoltre, DATE_
in attesa sta solo sprecando spazio nel tuo database.
3) Per favore non usarlo
date= year +""+ month +""+ dayOfMonth
Costruisci un Calendar
oggetto e utilizzare SimpleDateFormat
per ottenere correttamente una stringa formattata per la data.
usando l'ultima opzione sopra, avresti qualcosa del genere
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