2016-01-12 149 views
0

我在sqlite中有三列(ID,ONE,TWO,ID是我的主键)。SQLite比较两个字段

我的问题是,我想检查我的数据是否在我的列中,其中一个id = 1是0或1. 如果数据等于0,它将显示一个toast消息,如果数据等于1将显示另一个Toast消息。

我将如何能够在android中做到这一点?

+0

SQLiteDatabase分贝= this.getReadableDatabase();光标c = db.rawQuery(“SELECT * FROM table”,null); (c.moveToFirst()){ //确定值 String id = c.getString(0); String one = c.getString(1); String two = c.getString(2); //做些什么在这里使用值 } while(c.moveToNext()); } c.close(); db.close(); – Chinmay

回答

0

为了从数据库中读取数据,你通常使用query() method,但在阅读一个单一的值是与更容易longForQuery() helper function

SQLiteDatabase db = getReadableDatabase(); // inside an SQLiteOpenHelper-derived class 
try { 
    long one = DatabaseUtils.longForQuery(db, 
       "SELECT one FROM MyTable WHERE id = 1", null); 
    if (one == -1) { 
     // id=1 not found 
    } else if (one == 0) { 
     // ... 
    } else if (one == 1) { 
     // ... 
    } 
} finally { 
    db.close(); 
} 
+0

我想把我的查询放在DatabaseHelper中,而我的条件是在其他类中。我将如何打电话给我的查询? –

+0

然后给出条件作为参数。 (当你有新的问题时,你应该问一个新的问题。) –