我创建了以下数据库..
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
db.execSQL("create table ITEMS(ROW_ID integer primary key autoincrement,ITEM_DESCRIPTION text,ITEM_AMOUNT integer," +
"time DATETIME DEFAULT CURRENT_DATE);");
}
表格中的时间列输入创建条目的日期。 现在我想只检索今天输入的要检索的条目。 为此,我使用以下功能。
public void getToday(){
SQLiteDatabase db=this.getReadableDatabase();
SimpleDateFormat f=new SimpleDateFormat("yyyy-MM-dd");
Date date=new Date();
String x = f.format(date);
Log.d("DAte string",x);
Cursor cx=db.rawQuery("Select * from items where time="+ x ,null);
Log.d("Count",String.valueOf(cx.getCount()));
for(cx.moveToFirst();!cx.isAfterLast();cx.moveToNext()){
Log.d(".......",cx.getString(cx.getColumnIndex("ITEM_DESCRIPTION")));
}
db.close();
}
但是计数是0.光标没有检索任何条目。 我还检查了数据库中的日期格式。我将日期格式化为相同。 我仍然没有参赛作品。 请告诉我我犯了错误的地方。提前谢谢。
答案 0 :(得分:1)
Cursor cx=db.rawQuery("Select * from items where time='"+ x+"'" ,null);
Log.d("Count",(cx.getCount()));
if (cursor != null && cursor.moveToFirst()) {
do {
Log.d(".......",cx.getString(cx.getColumnIndex("ITEM_DESCRIPTION")));
} while (cursor.moveToNext());
请使用此代码..我希望您已经将数据输入database.right? 否则光标计数重新生成0。