android - 如何在数据库中更新其内容字符串时更新 ListView 行?

标签 android android-sqlite updatemodel

我有两个完全相同的 ListView 。我正在使用一个 ListView 来更新包含的字符串。我正在使用下面的查询来更新数据库。

myDatabase.update(TABLE_WORKSITEFOLDER, contentValues, KEY_LOCALID + "= ? ", new String[] { String.valueOf(increementedCurrentPosition)});

我的数据库已更新,但包含此字符串的 ListView 行未更新。这是通过更新列表适配器来实现的。如果是这样那么该怎么做?

最佳答案

两个问题。

  1. 字符串文字需要用单引号引起来,正如许多其他答案所解决的那样。不过,请考虑使用 ? 占位符和绑定(bind)参数。

  2. 对于这样的 SQL,请使用 execSQL() 而不是 rawQuery()rawQuery() 仅编译 SQL,但不运行它。它仅在移动光标时运行。 execSQL() 编译并运行 SQL。

示例:

myDatabase.execSQL("UPDATE " + TABLE_WORKFLOW + " SET " + KEY_NAME + " = ? WHERE " + KEY_LOCALID + " = ?",
    new Object[] { updatedName, increementedCurrentPosition });

关于android - 如何在数据库中更新其内容字符串时更新 ListView 行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27854687/

相关文章:

android - Kotlin 协程 - 启用 ProGuard 的 ClassNotFoundException

android - 尝试查询列时删除了无效列

sqlite - 如果数据库大小大于 2 GB,SQLite 性能会下降吗?

具有多选功能的 asp.net mvc 强类型 View 模型

android - 如何以编程方式选择 Android 芯片组中的默认芯片?

java - 安卓 : overriding Button minheight programmatically

iphone - 将方向存储到数组 - 并进行比较

android - Sqlite列继续将列名和数据类型组合为最终列名。

asp.net-mvc - MVC UpdateModel 和子类与基类

asp.net-mvc - ASP.NET MVC UpdateModel 易受黑客攻击?