SQLite
 sql >> Teknologi Basis Data >  >> RDS >> SQLite

SQLiteException menggunakan WHERE +KEY_Date+='+date+'

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 



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara menginstal SQLite di macOS

  2. Apa itu browser SQLite dan bagaimana cara menggunakannya?

  3. TABEL DROP SQLite

  4. SQLiteAssetHelper:Tidak dapat membuka database untuk menulis (akan mencoba hanya-baca)

  5. SQLite JSON()