2013-05-18 165 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)); 
相关问题