0

我在我的应用程序中使用 Sqlite 数据库,

我已经将我的应用程序上传到 Appstore,

我在我的数据库中进行了一些更改并上传了应用程序的第二个版本。现在任何用户都安装应用程序。有没有办法在不卸载以前版本的应用程序的情况下进行数据库更改?

我的 sqlite 数据库文件存储在 Document 目录文件夹中。

我怎样才能做到这一点?

4

2 回答 2

0

是的,这在核心数据中是可能的。这个概念被称为核心数据迁移。

在您的情况下,您可以手动执行此操作。只需找出修改了哪个数据表并检查您的版本并更新它。

于 2012-06-12T12:08:59.173 回答
0

您将需要执行数据库迁移。这意味着您的应用程序的更新版本应该检查旧数据库的存在。

如果它找到一个,它应该执行将数据库更新到新模式所需的所有必要ALTER TABLE ...或等语句。CREATE TABLE ...

根据您所做更改的数量和类型,这对您来说可能容易或困难。但只要数据在那里,您就应该能够迁移它,即使您完全重新设计了数据库模式。

我强烈建议您采用 TDD 方法,或者至少编写一些单元测试来测试迁移过程。您最不想要的就是让用户丢失他们的数据。

于 2012-06-12T12:09:07.413 回答