我的数据库有一个未解决的问题。用户使用用户名和密码进行注册,并且可以从 EditProfile 类中更改两者。问题是,虽然它似乎可以工作,但它也没有更新。这是我的代码。
btnConfirm.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if (db.getUser(1).getUsername().equals(edtOldUsername.getText().toString())) {
if (db.getUser(1).getPassword().equals(edtOldPassword.getText().toString())) {
if(edtNewPassword.getText().toString().equals(edtConfirmNewPassword.getText().toString()))
{
db.updateUser(new User(edtNewUsername.getText().toString(), edtNewPassword.getText().toString(), ""));
finish();
}else Toast.makeText(getApplicationContext(), "Password does not match!", Toast.LENGTH_LONG).show();
} else Toast.makeText(getApplicationContext(), "Wrong Password! Try again...", Toast.LENGTH_LONG).show();
} else Toast.makeText(getApplicationContext(), "Wrong Username! Try again...", Toast.LENGTH_LONG).show();
}
});
这是我的 dbhelper 代码
public int updateUser(User user) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(KEY_NAME,user.getUsername());
values.put(KEY_PASS, user.getPassword());
values.put(KEY_BDATE, user.getBdate());
// updating row
return db.update(TABLE_USER, values, KEY_ID + " = ?",
new String[] { String.valueOf(user.getID()) });
}
无需响应...问题已解决。无论如何... :)