获取/返回由Android Room数据库生成的自动生成的ID(作为主键)

时间:2019-01-13 11:18:12

标签: android primary-key android-room android-architecture-components

对于android房间界面,我想获取自动生成的ID(作为刚刚插入的记录的主键),这样我就可以将其放在对象中,而无需在插入后执行选择,因为选择可能返回错误如果没有其他唯一属性或这些记录类型的属性集,请记录。

例如,对于将两个具有相同名称的人插入到同一表中。您可能会说生成一个组合键以构成唯一的键集。但是,这可能涉及添加原本不需要的新字段。

我看过各种链接,包括下面的链接。有人提到,如果将insert方法声明为返回整数(或long)并成功,则返回行ID。 但是据我了解,行ID不能假定与主键相同。 (请参阅Rowid after Insert in Room)。 我没有任何评论,因为我没有足够的声誉积分。 对于任何可能是解决此问题的好方法/典型方法的任何评论,我都感激不尽。

这些是我看过的帖子:

Android Room - Get the id of new inserted row with auto-generate

https://developer.android.com/training/data-storage/room/accessing-data https://commonsware.com/AndroidArch/previews/the-dao-of-entities

0 个答案:

没有答案