Почему бы вам не оставить базу данных такой, какая она есть, и просто вставить / удалить данные по мере необходимости вместо того, чтобы копировать предварительно заполненную базу данных?
В качестве альтернативы вы также можете воспользоваться противоположным подходом: оставить исходную базу данных, скопировать предварительно заполненную базу данных с новым именем, вставить избранное из исходной базы данных в новую, удалить исходную и теперь использовать только новую. , Таким образом, вы всегда уверены, что ничего не происходит с избранными вашего пользователя.
Или вы могли бы сначала написать избранное в текстовом файле, а затем сделать то же самое, что вы описали. Если что-то случится (например, сбой), у вас всегда есть избранное в сохраненном текстовом файле.
Это также может работать с переносом основных данных, но до сих пор я избегал ... любого структурного изменения базы данных я бы предпочел избегать, я думаю ...