我正在浏览Google IOSched App的源代码,并注意到以下代码段是其Content Provider实现的一部分:public static class Blocks implements BlocksColumns, BaseColumns
。
据我所知,BaseColumns只是两个常量的接口(interface):_COUNT
和_ID
。
我有两个问题:
_ID
相比,实现BaseColumns有哪些优点/缺点? _COUNT
的作用是什么? 最佳答案
根据Android Developer Guide,
本指南继续说明了为什么需要primary key
提供的唯一值的基本知识,
要按照您提供的顺序回答您的问题,请执行以下操作:
_ID
列是多功能的最佳实践。它不一定要显示,但是作为游标和查询所必需的主键(和外键!)非常有用。_COUNT
is just the count of the number of rows in a directory.如果要删除和添加表的行,则没有理由相信项目的_ID
整数与添加时或排序属性有关。换句话说,last_insert_rowid()
不等于 Count()
。 _COUNT列仅提供一种方法来显示在该查询的每一行中查询返回多少结果。有关视觉引用,请参见linuxtopia.org