从光标android中删除值



由于一个特殊的原因,我在光标中添加了一个伪内容。但在用户执行了一些操作之后,我想删除我添加到光标中的伪内容。有这样做的选择吗?

https://stackoverflow.com/a/18154738/14705856,这是我在SO上找到的解决方案之一。但问题是我使用的表有很多列。那么,是否有任何方法可以复制所有的行值,而不是将它们添加为cursor.getString(columnPosition)

String exclueRef = "Some id to exclude for the new";
MatrixCursor newCursor = new MatrixCursor(new String[] {"column A", "column B");
if (cursor.moveToFirst()) {
do {
// skip the copy of this one .... 
if (cursor.getString(0).equals(exclueRef))
continue;
newCursor.addRow(new Object[]{cursor.getString(0), cursor.getString(1)});
} while (cursor.moveToNext());
}

因为这是临时数据,所以不要将其添加到游标中,而是应该将其保存在一个单独的哈希图中,并将其映射到特定的行,否则您必须将该游标转换为应用程序中的某个bean,将数据放在bean中而不是游标中。

避免在游标中添加任何不想推送到数据库的数据。

如果要将此数据临时写入数据库,则必须运行一个单独的SQL查询,以便在它对您没有用处时将其删除。

最新更新