1) Não adicione um literal
allfood
objeto para uma String. SQL não pode interpretar um objeto Java. O método deve ser qualquer um dos seguintes porque
allfood
é o objeto inteiro, você precisa dele como parâmetro. E nomeando-o como date
é simplesmente confuso. totalFat(Date date)
totalFat(String date)
totalFat(Calendar date)
totalFat(int year, int month, int dayOfMonth)
deve ser
Data=DATE_20170213
2) Não, realmente não deveria porque o SQLite não suporta esse formato de datas. Além disso,
DATE_
pré-pendente está apenas desperdiçando armazenamento em seu banco de dados. 3) Por favor, não use isso
date= year +""+ month +""+ dayOfMonth
Crie um
Calendar
objeto e use SimpleDateFormat
para obter corretamente uma string formatada com data. usando a última opção acima, você teria algo assim
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