SQLite:从API存储数据时,应该使用Integer主键还是Integer?

时间:2018-10-18 00:59:06

标签: ios sqlite integer primary-key

我继承了一个iOS项目,该项目使用数据类型Integer primary key在列中存储记录ID。这很好,但是,我不确定为什么不只使用常规的Integer。 iOS应用程序从API抓取记录并将其存储在本地SQLite数据库中。 API中的这些记录每个都有一个唯一的ID(例如ID:100101394)。

在这种情况下,使用整数主键相对于常规整数是否有原因或优势?

编辑:如果可行,该应用程序将记录的唯一ID用于Integer主键,但我不知道为什么我不能只使用常规整数。

编辑1:每个人,我都知道我可以使用主键来访问记录。我想了解的是,是否有理由在普通的Integer上使用它来存储记录的ID。API返回的每个记录ID都是唯一的。

2 个答案:

答案 0 :(得分:1)

键入整数主键,则只能输入整数。它还可以保证在放入null时插入一个整数。我相信它也可以作为RowID的别名(如果该表存在)。

这里是其文档的链接。

https://sqlite.org/lang_createtable.html#rowid

答案 1 :(得分:0)

我相信,当您希望通过该标识符查找记录时,可以使用密钥。我希望这会在存储项目时增加额外的开销,但是如果您想通过“整数主键” ID访问记录,则可以节省大量时间和系统开销。