如何从SQLitedatabase更新和删除行?

时间:2012-08-15 11:23:40

标签: android sqlite

我是Android新手,我在头版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();
    }

此查询对更新和删除操作是否正确?

1 个答案:

答案 0 :(得分:1)

您有两个(主要)选项:

1)使用rawQuery并像在任何其他数据库引擎中一样编写更新/删除。

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

2)使用“helper”方法并按照以下方式执行: 更新:

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()应该有所帮助。