2013-05-18 162 views
0

我有一個SQLLite數據庫的名稱字段的網站。我有保存並創建按鈕。我想運行我的addRecord()或updateRecord(),這取決於name字段中的值是否存在。如何檢查SQLLite數據庫中是否存在「名稱」值?

我有我將對DBAdapter這個方法:

public Cursor getRow(long rowId) { 
     String where = KEY_ROWID + "=" + rowId; 
     Cursor c = db.query(true, DATABASE_TABLE, ALL_KEYS, where, null, null, 
       null, null, null); 
     if (c != null) { 
      c.moveToFirst(); 
     } 
     return c; 
    } 

如何創建一個類似的方法來獲得基於ROWID的名稱的字符串提供的?

即你的where子句中

public Cursor getRowID(String _name) { 
     ... 
    } 

回答

1

搜索的名稱,而不是ID。

public Cursor getRowID(String _name) { 
    String where = "name = '" + _name + "'"; 
    Cursor c = db.query(true, DATABASE_TABLE, ALL_KEYS, where, null, null, 
      null, null, null); 
    if (c != null) { 
     c.moveToFirst(); 
    } 
    return c; 
} 

從光標獲取ROWID像這樣的東西:

Cursor c = getRowID("John"); 
int rowID = c.getInt(c.getColumnIndex(KEY_ROWID)); 
相關問題