我有两个完全相同的 ListView 。我正在使用一个 ListView 来更新包含的字符串。我正在使用下面的查询来更新数据库。
myDatabase.update(TABLE_WORKSITEFOLDER, contentValues, KEY_LOCALID + "= ? ", new String[] { String.valueOf(increementedCurrentPosition)});
我的数据库已更新,但包含此字符串的 ListView 行未更新。这是通过更新列表适配器来实现的。如果是这样那么该怎么做?
最佳答案
两个问题。
字符串文字需要用单引号引起来,正如许多其他答案所解决的那样。不过,请考虑使用
?
占位符和绑定(bind)参数。对于这样的 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/