使用selectionArgs的SQLite查询为null

时间:2014-09-12 06:32:28

标签: android

我在query()语句中使用String selectionArgs。我想将selectionArgs中的一个设置为null,因为我没有使用它。 Ex" Cursor cur = sqlite_obj.query(TableName, null, "UID = ? AND Age > ? AND Room = ? AND Adre = ?", new String[] { "31", "" ,"3", ""}, null, null, null, null);

但是我没有使用selectionArgs的第2和第4或者selectionArgs的第3个可以为null。我怎么办?

提前致谢。

5 个答案:

答案 0 :(得分:3)

有点不清楚你想要什么,但如果你只想要表格内容,那么这就是你需要的全部:

 Cursor cur = db.query("YourTableName", 
        null, null, null, null, null, null);

通过这个你得到一个光标你可以获得表格内的所有条目。

答案 1 :(得分:3)

也许您需要使用两个查询。

String where="";
String []params=null;
if(hasAge){
   where="UID = ? AND Age > ?";
   params=new String[] { String.valueOf(iud), String.valueOf(age) };
}else{
   where="UID = ? ";
   params=new String[] { String.valueOf(iud) };
}
Cursor cur = sqlite_obj.query(TableName, null, where, params, null, null, null, null);

答案 2 :(得分:2)

你也可以尝试这种方式

  SQLiteDatabase db = this.getWritableDatabase();
            String selectQuery = "SELECT  * FROM " + TABLE_NAME + "";
            Cursor c = db.rawQuery(selectQuery, null);
            if (c.moveToFirst()) {

                    do {
                        Log.d("tag",""+c.getString(c.getColumnIndex(KEY_COLUMN_NAME)));


                    } while (c.moveToNext());

            }

答案 3 :(得分:2)

SQLiteDatabase db = DBHelper.getWritableDatabase();
Cursor mCursor =db.query("TABLE_NAME", 
                null, 
                null, 
                null,        
                null, 
                null, 
                null);

答案 4 :(得分:1)

您可以使用以下内容:

Cursor cur = sqlite_obj.query(TableName, null, "UID = ? AND Age > ?", new String[] { "31", "54" },     null, null, null, null);

使用'?'在WHERE子句和参数中,只需输入这些值。希望这会有所帮助。