java检索给定电子邮件中的某些列
我有一个具有以下属性的表用户:
private static final String COLUMN_UID = "id";
private static final String COLUMN_NAME = "name";
private static final String COLUMN_EMAIL = "email";
private static final String COLUMN_PASSWORD = "password";
private static final String COLUMN_LEVEL_ONE_SCORE = "score_1";
private static final String COLUMN_LEVEL_TWO_SCORE = "score_2";
private static final String COLUMN_LEVEL_THREE_SCORE = "score_3";
我希望用户输入他/她的电子邮件以检索分数1、分数2和分数2
我试过这个密码,但它不起作用
DbHelper db=new DbHelper(this);
final EditText email = (EditText) findViewById(R.id.emailSer);
search.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String s1= email.getText().toString();
db.getsearch(s1);
}
});
搜索功能是:
public String getsearch(String email)
{
dbase = this.getReadableDatabase();
Cursor cursor = dbase.rawQuery("select "+ COLUMN_LEVEL_ONE_SCORE +COLUMN_LEVEL_TWO_SCORE + COLUMN_LEVEL_THREE_SCORE +
" from user where email ' "+email+"'",null);
StringBuffer buffer = new StringBuffer();
while (cursor.moveToNext())
{
int index1 = cursor.getColumnIndex(COLUMN_LEVEL_ONE_SCORE);
int index2 = cursor.getColumnIndex(COLUMN_LEVEL_TWO_SCORE);
int index3 = cursor.getColumnIndex(COLUMN_LEVEL_THREE_SCORE);
String s1 = cursor.getString(index1);
String s2 = cursor.getString(index2);
String s3 = cursor.getString(index3);
buffer.append(s1 + " " + s2 + " " + s3);
cursor.moveToNext();
}
return buffer.toString();
}
# 1 楼答案
将select语句更改为:
看起来这只是一个错误的SQL语法问题