Для интерфейса комнаты Android я хочу получить автоматически сгенерированный идентификатор (в качестве первичного ключа только что вставленной записи), чтобы я мог поместить его в объект без выполнения выбора после вставки, где выборка может вернуть неправильный запись, если нет другого уникального атрибута или набора атрибутов для этих типов записей.
Например, для двух человек с одинаковыми именами, вставляемых в одну и ту же таблицу. Вы можете сказать, сгенерировать составной ключ, чтобы сделать уникальный набор. Однако это может включать добавление новых полей, которые в противном случае не требуются.
Я видел различные ссылки, в том числе ниже. Некоторые упоминают, что это идентификатор строки, который возвращается, если объявлен метод вставки, возвращающий целое (или длинное), и он успешно выполняется.
Однако я понимаю, что нельзя считать, что идентификатор строки совпадает с первичным ключом. (См. Rowid после вставки в комнате ).
Я не могу комментировать какие-либо сообщения, потому что у меня недостаточно очков репутации.
Я ценю любые комментарии относительно того, что может быть хорошим / типичным подходом к этой проблеме.
Вот сообщения, на которые я смотрел:
Android Room - Получить идентификатор новой вставленной строки с помощью автоматического создания
https://developer.android.com/training/data-storage/room/accessing-data
https://commonsware.com/AndroidArch/previews/the-dao-of-entities