0
크레딧의 시작 값이 '5'로 설정된 사용자가 있습니다. 이제 사용자가 해당 번호에 추가 할 수있는 메소드를 만들고 싶습니다. 2. 그러면 데이터베이스 열의 행이 7이됩니다.현재 값에 추가 SQLite
그러나 현재 수행 할 수있는 방법이 없습니다.
현재 방법
public void upDateUser(String money)
{
String selectQuery = "SELECT " + KEY_CREDITS + " from " +
DATABASE_TABLE + " where " + KEY_ROWID + " = " + 0;
SQLiteDatabase db = this.getWritableDatabase();
Cursor c = db.rawQuery(selectQuery, null);
int oldMoney = 0;
if (c.moveToFirst())
{
oldMoney = Integer.parseInt(c.getString(4));
}
ContentValues cvUpdate = new ContentValues();
cvUpdate.put(KEY_CREDITS, (oldMoney + money));
String filter = KEY_ROWID + "=" + 0;
db.update(DATABASE_TABLE, cvUpdate, filter, null);
}
난 후 다른 활동에 위의 메소드를 호출
public void onClick(View arg0)
{
switch (arg0.getId()){
case R.id.topup:
boolean work = true;
try{
String money = spinner.getSelectedItem().toString();
UDbHelper ud = new UDbHelper(this);
ud.open();
ud.upDateUser(money);
ud.close();
글쎄, 뭐가 문제 야? 오류가 있습니까? – mok
그것은 단지 아무것도하지 않습니다. 나는 기능을 수행하기 위해 무엇을 놓치고 있는지 모른다. – user3408604
오류가 발생합니다. 'c.getString (4)'확실히 충돌합니다. –