0

私はアンドロイド開発に不慣れですが、フロントページにメモ帳アプリケーションを開発していますlistviewが、メモのタイトルとしてアイテムが含まれていますlistview

public void Update(String txt)
    {
    ContentValues upateValues = createContentValues(txt);
    db.update(table_name, upateValues, row + "="+ "a", null);
    Toast.makeText(this, "Record Updated", Toast.LENGTH_SHORT).show();
    }

public void Delete()
    {
    db.delete(table_name, "row" +"="+"jmj", null);
    Toast.makeText(this, "Record Deleted", Toast.LENGTH_SHORT).show();
    //Display();
    }

このクエリは、更新および削除操作に対して正しいですか?

4

1 に答える 1

1

これを行うには、2 つの (主な) オプションがあります。

1) rawQuery を使用し、他の DB エンジンと同様に更新/削除を記述します。

db.rawQuery("UPDATE table_name SET column1=value, column2=value2 WHERE some_column=some_value")

2)「ヘルパー」メソッドを使用して、次のようにします:更新:

ContentValues values = new ContentValues();
values.put("your new values");
db.update(TABLE, values, ID + "=?", new String[] { rowId });

消去:

db.delete(TABLE, ID + " =? ", new String[] { intId });

データセットが変更されたことをリストビューに伝えることを忘れないでください。その方法は、ListView に使用しているアダプタによって異なります。ContentProvider/Loader を使用していないと思うので、単純な adapter.notifyDatasetChanged() が役立つはずです。

于 2012-08-15T11:33:16.190 に答える