通过iTunes / AppStore更新应用程序时更新SQLite数据库

时间:2012-05-14 18:22:56

标签: ios sqlite

在通过App Store进行应用更新期间,我想更新包含更多内容的SQLite数据库文件。 旧的SQLite文件位于我的应用程序的Documents文件夹中。

我该如何处理?

2 个答案:

答案 0 :(得分:1)

sqlite> attach 'path_to_table.db3' as toMerge;           
sqlite> insert into MyTableToInsertTo select * from toMerge.MyTableToInsertFrom; 
sqlite> detach database toMerge; 

使用BEGIN;承诺;对于大数据

link

答案 1 :(得分:1)

我假设您没有使用Core Data,否则您将使用自动迁移功能。对于直接SQLLite,您将需要创建一个新的数据库文件。然后,根据架构更改的性质,您可以执行查询以复制数据(using INSERT INTO destination SELECT * FROM source)。但是,如果使用一组简单的查询来处理更改太多,例如,如果它涉及业务逻辑,那么您可能需要编写一个脚本来将旧数据从一个数据库转换为新数据。