找不到这样的专栏

时间:2010-12-26 06:55:15

标签: android sqlite

我正在尝试进行注册过程。我在DbAdaptor中有一个方法,我检查用户名是否存在。

public Boolean checkUsername(String username) throws SQLException {
    Cursor mCursor = db.query(TABLE_USERS, new String[] { ID,
            KEY_NAME, KEY_USERNAME}, KEY_USERNAME + "="
            + username, null, null, null, null, null);
    if (mCursor != null) {
        return true;
    }
    return false;
}

从编辑文本中我发送了一个值“harsha”作为用户名来测试它。但我收到以下错误

alt text

http://variable3.com/files/screenshots/2010-12-26_1215.png

活动中的代码是这个

                DBAdapter db = new DBAdapter(RegisterActivity.this);
                db.open();

                if (db.checkUsername(username))        
                    Toast.makeText(RegisterActivity.this, "Found", 
                            Toast.LENGTH_LONG).show();
                else
                    Toast.makeText(RegisterActivity.this, "Not Found", 
                            Toast.LENGTH_LONG).show();
                db.close();

2 个答案:

答案 0 :(得分:1)

你需要将harsha作为'harsha'发送单引号

 public Boolean checkUsername(String username) throws SQLException {
    Cursor mCursor = db.query(TABLE_USERS, new String[] { ID,
            KEY_NAME, KEY_USERNAME}, KEY_USERNAME + "="
            +"'"+username+"'", null, null, null, null, null);
    if (mCursor != null) {
        return true;
    }
    return false;

答案 1 :(得分:1)

您正在检查光标而不是moveToNext()结果。游标有效但不返回结果集。