我正在写下Android Studio App的代码,但是当我测试该函数以检查密码是否正确并且在db中匹配时,应用程序崩溃了。我已在以下代码中隔离了该问题。如果我从代码中删除此功能,该应用程序将完美运行。
public String searchPass(String uname, String pass){
db = this.getReadableDatabase();
String query= "select uname, pass from" + TABLE_NAME;
Cursor cursor=db.rawQuery(query, null);
String a, b;
b="not found";
if(cursor.moveToFirst()){
do{
a= cursor.getString(0);
if(a.equals(uname)){
b=cursor.getString(1);
break;
}
}while(cursor.moveToNext());
}
return b;
}
您的问题是,由于FROM关键字和表名之间缺少空格,将出现SQL语法错误。
要解决此问题,请使用: -
String query= "select uname, pass from " + TABLE_NAME;