我在我的DBHelper上有这个
public Cursor selectUser(String username){
SQLiteDatabase db = this.getReadableDatabase();
Cursor res = db.rawQuery("SELECT * FROM user_tbl WHERE username = '" +
username+"'", null);
return res;
}
我的Activity上也有这个try-catch块。
DBHelper mydb;
Cursor res;
user = LoginActivity.usernamee;
try{
res = mydb.selectUser(user);
if(res.getCount() > 0){
String fullnamee = res.getString(res.getColumnIndex(DBHelper.USER_NAME));
fullname.setText(fullnamee);
fullname.setFocusable(false);
fullname.setClickable(false);
}
}catch(Exception e){
System.out.println("Error retrieving database record.");
}
但是,我得到了捕获异常。我想要做的是,我想检查我的数据库,其中用户名等于LoginActivity.usernamee
。然后从我的数据库表中显示用户的全名到我的Android文本视图。
我想请求帮助。谢谢!
答案 0 :(得分:1)
我认为你错过了" moveToFirst"
SQLiteDatabase db = this.getReadableDatabase();
Cursor res = db.rawQuery("SELECT * FROM user_tbl WHERE username = '" + username + "'", null);
if(res.getCount() > 0){
res.moveToFirst();
String fullnamee = res.getString(res.getColumnIndex(DBHelper.USER_NAME));
// do what you want
}