我发现了一些其他问题,但我不清楚如何在 ios 中更新应用程序时保留旧数据库中的数据。
案例一: 我可以保留旧数据库吗?
如果情况 1 为"is": 我可以在旧数据库中插入新列或进行任何更改吗?这是否安全?
如果情况 1 为否: 我可以在新数据库中获取旧数据库数据吗?旧数据库会被删除吗?
情况 2:如果我为新数据库指定不同的名称(它将包含在 bundle 中)?如果提供新名称保留旧数据库,我可以通过编程方式删除旧数据库吗?
最佳实践是什么?给数据库文件一个新名称以保留旧文件,然后将旧文件复制到新数据库并删除旧数据库文件?刚开始使用旧的?
寻求帮助..:)
最佳答案
案例一:我可以保留旧数据库吗?
是的,更新您的应用程序不会删除存储在文档目录中的数据库文件。 (但如果它在你的包中,它将被删除)
如果情况 1 为"is":我可以在旧数据库中插入新列或进行任何更改吗?这是否安全?
这取决于您的实现。您可以使用 ALTER TABLE查询添加或删除列。您需要处理代码中的新更改,否则可能会导致问题。 添加列在正常情况下不会引起任何问题(取决于您的插入查询语句和新字段约束)
关于iOS - 在更新到新版本时保留旧的 sqlite 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21448363/