1) Jangan tambahkan allfood liter secara literal objek ke sebuah String. SQL tidak dapat menginterpretasikan objek Java.
Metodenya harus salah satu dari berikut ini karena allfood adalah seluruh objek, Anda membutuhkannya sebagai parameter. Dan beri nama sebagai date hanya membingungkan.
totalFat(Date date)totalFat(String date)totalFat(Calendar date)totalFat(int year, int month, int dayOfMonth)
seharusnya
Date=DATE_20170213
2) Tidak, seharusnya tidak karena Sqlite tidak mendukung format tanggal tersebut. Selain itu, DATE_ yang tertunda sebelumnya hanya membuang-buang penyimpanan di database Anda.
3) Tolong jangan gunakan ini
date= year +""+ month +""+ dayOfMonth
Buat Calendar objek dan gunakan SimpleDateFormat untuk mendapatkan string berformat tanggal dengan benar.
menggunakan opsi terakhir di atas, Anda akan memiliki sesuatu seperti ini
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