我正在尝试更新 Android 中的 sql 数据库。
public boolean updatepasswordbySimcardnumber(String simcard, String password) {
mDbHelper = new DatabaseHelper(mCtx);
mDb = mDbHelper.getWritableDatabase();
Cursor mCursor = null;
int retvalue = 0;
mCursor = mDb.query(SQLITE_TABLE, new String[] {KEY_ROWID,
KEY_IDNUM, KEY_SIMCARD, KEY_DESCRIPTION, KEY_MODEL, KEY_TIMEINSTANCE, KEY_PASSWORD},
null, null, null, null, null);
for(mCursor.moveToFirst(); !mCursor.isAfterLast(); mCursor.moveToNext()){
if(mCursor.getString(2).equals(simcard)){
ContentValues updatevalue = new ContentValues();
updatevalue.put(KEY_PASSWORD, password);
long colId = mCursor.getColumnIndex(KEY_ROWID);
retvalue = mDb.update(SQLITE_TABLE, updatevalue, KEY_ROWID + "=?",new String[] { String.valueOf(colId) });// + colId, null);
break;
}
}
mDbHelper.close();
return retvalue > 0;
}
但密码从未更新过。retvalue 始终为 0。可能有什么问题?谢谢