如何使用带有WHERE子句的rawQuery()来查找给定列中的特定日期?

时间:2016-08-08 18:19:13

标签: android database sqlite android-sqlite sqliteopenhelper

我有一个如下所述的查询,但是当我在Cursor上使用getCount()函数时,我得到光标返回0。

请帮我准确写好我的查询。

String DT_Value = SetAlarm.Today_Date;
SQLiteDatabase sqlDB = this.getWritableDatabase();
Cursor c = sqlDB.rawQuery("SELECT * from NAME WHERE DATE= " +DT_Value ,null);
return c;

我的DT_Value值为16-08-08且该值在我的表NAME的第4列可用,但是当我调用函数c.getCount()时,我将计数设为0。 / p>

3 个答案:

答案 0 :(得分:1)

我得到的解决方案如下

 String[] params = new String[]{ Today_Date };
        SQLiteDatabase sqlDB = this.getWritableDatabase();
        Cursor c = sqlDB.rawQuery("SELECT * FROM NAME WHERE DATE =  ?", params);
return c;

谢谢你们......

答案 1 :(得分:0)

尝试使用修改后的查询

Cursor c = sqlDB.rawQuery("SELECT * from NAME WHERE DATE='"+DT_Value +"'",null);

答案 2 :(得分:0)

public Cursor getuser(String name) {

    SQLiteDatabase db = getReadableDatabase();
    String qry = "Select * from UserDetails where name ='" + name + "';";
    Cursor c     = db.rawQuery(qry, null);
        return c;

}
相关问题