我需要检查两个游标是否指向具有相同值的相同行。有可能吗?
更多详情:
ContentProvider
ContentProvider
内的数据。答案 0 :(得分:4)
根据CommonsWare删除的答案:
迭代Cursor中的相关列,检索值并比较每个值。
虽然您可能事先不知道每列的类型,但您可以找到Cursor.getType()
。您还可以使用Cursor.getColumnNames()
获取每列的名称和列数。
此信息将允许您使用正确的访问器方法获取每个值并进行比较。
答案 1 :(得分:3)
在SQLite中,行没有与其列值分开的标识(但ROWID
是这些值之一)。
您想要的是您的数据在游标中有一些唯一的列,ROWID
或其他一些保证没有重复的键值。
否则,您永远无法知道您所看到的只是两个记录恰好在这些列中具有相同的值。