Java/Android SQL Helper Class Зачем отбрасывать таблицу при обновлении?
Для большинства примеров и учебных пособий, которые я видел, всегда предлагается выполнить SQL для удаления таблицы, если она существует в методе onUpgrade.
Почему вы хотите удалить таблицу, так как это приведет к удалению всех данных, не лучше ли просто заменить старую версию БД новой версией?
Это было бы то, что я не мог понять, и нигде в Интернете не изложил причину.
Спасибо
| Сэм |
2 ответа
Потому что это учебники: они предполагают, что у вас нет ценных данных (или вообще нет данных). В этом случае самый простой способ обновить схему - удалить старые таблицы и создать новые.
Не принимайте это во внимание, вы правы.
Для простоты. Отбросить старую версию и воссоздать новую версию просто и понятно, хотя и разрушительно. Во многих случаях такая потеря данных не является проблемой во время разработки.
Написание правильного кода переноса данных было бы темой для другого примера / учебного пособия, поскольку по своей сути оно включает по меньшей мере две версии схемы базы данных и, следовательно, помощника базы данных. Включение примера миграции в простое учебное пособие "сделай так, чтобы начать" просто добавило бы ненужную сложность.