You can either write 'all' the data out to a file and then re-import it or store it in a List or similar and re-build... It really depends on how the data is structured and how many records have been created / modified that you want to store (some of the data must be static or standard...).
I think if someone uninstalled and reinstalled then they wouldn't expect their data to still be there. If they upgraded to a new version then they would expect the data to remain. I used to use a file, but then found that grabbing the data and storing and then restoring was the best solution for this.
Be careful if the database structure has altered this can also lead to issues..
If I uninstall the app the dbase wil stay.
and us this code for not overriding the db
If File.Exists(File.DirRootExternal, "Transmis/trasmis.db") = False Then
File.Copy(File.DirAssets,"trasmis.db", File.DirRootExternal, "Transmis/trasmis.db")