据我了解,我有一个使用SQLiteDatabase
的应用程序。
我看到相同数据的2次插入(相同PK)似乎没有失败。
Uri res = context.getContentResolver().insert(CONTENT_URI, values);
res = context.getContentResolver().insert(CONTENT_URI, values);
所以当我打印
res
时,我看到:content://application_id/my_table_name/10
content://application_id/my_table_name/11
这是否意味着该行插入了ID为10和11的2次?
但是,如果我要插入两个具有相同ID的行怎么办?
如何验证正在发生什么?
我的实际问题:我对重复PK更新感兴趣,并注意到了这一点
最佳答案
这是否意味着该行插入了ID为10和11的2次?
想必。您必须与实施ContentProvider
的任何人交谈,然后询问他们。
但是,如果我要插入两个具有相同ID的行怎么办?
您必须与实施ContentProvider
的任何人交谈,然后询问他们。这个星球上没有其他人可以回答这个问题。众所周知,ContentProvider
不受SQLite支持,也没有主键的概念。或者,主键可能是_ID
列,而不是ContentValues
中的列之一。
如何验证正在发生什么?
您必须与实施ContentProvider
的任何人交谈,然后询问他们。只有他们知道他们在哪里以及如何存储数据。