Como diría Jack el Destripador... vayamos por partes:
1.- en tu actualización, busca un archivo interno (que no existirá salvo que se haya ejecutado ya la actualización) por ejemplo "updated.dat" en File.DirInternal.
Si el fichero no existe, pasamos al paso 2:
2.- Implementa una funcion que cree una base de datos nueva y mueva los datos actuales a ella, tras lo cual, machacas la base de datos vieja con la nueva. Si todo esto salio ok, creas el fichero updated.dat en File.DirInternal, con lo cual, en las siguientes ejecuciones, no machacará nada ni nada, pues el fichero ya existe.
Puede que no sea la solución más ortodoxa, pero en una ocasión hice un cambio parecido para cerca de 11k dispositivos que habian descargado la app y no se enteró ni dios
Un saludo.