1) Không thêm allfood theo nghĩa đen đối tượng với một chuỗi. SQL không thể diễn giải một đối tượng Java.
Phương thức phải là bất kỳ phương thức nào sau đây vì allfood là toàn bộ đối tượng, bạn cần nó làm tham số. Và đặt tên nó là date chỉ đơn giản là khó hiểu.
-
totalFat(Date date) -
totalFat(String date) -
totalFat(Calendar date) -
totalFat(int year, int month, int dayOfMonth)
phải là
Date =DATE_20170213
2) Không, thực sự không nên vì Sqlite không hỗ trợ định dạng ngày tháng đó. Ngoài ra, DATE_ đang chờ xử lý trước chỉ lãng phí dung lượng lưu trữ trong cơ sở dữ liệu của bạn.
3) Vui lòng không sử dụng cái này
date= year +""+ month +""+ dayOfMonth
Tạo Calendar đối tượng và sử dụng SimpleDateFormat để có được một chuỗi được định dạng ngày một cách chính xác.
sử dụng tùy chọn cuối cùng ở trên, bạn sẽ có một cái gì đó như thế này
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