我在iOS应用中使用了sqlite
数据库。我将所有表定义放在.sqlite
文件中,我放在Xcode项目的“Supporting Files”组中,在代码中我将此文件复制到“Documents”以便能够执行数据库操作。在开发时,我发现,当我需要添加/删除表或更改其字段并从“支持文件”中删除.sqlite
文件以添加新文件时,我需要卸载应用程序从设备或模拟器再次构建以获取新数据库。
如何通过替换.sqlite
文件而不必卸载应用程序来更改数据库表?当应用程序提交到App Store时,如果有可用的数据库更改的新更新,用户是否必须重新安装应用程序?
编辑。是否可以替换数据库并保留/复制用户在旧数据库中的数据?或者,当从更换.sqlite
数据库的商店下载应用更新时,用户是否会丢失所有存储的数据,就像他从头开始安装应用程序一样?
我还没有向商店提交应用程序,如果我需要在.sqlite
文件中包含此类数据库时需要对数据库表进行更改,我需要一些有关如何处理应用程序更新的指南。我没有使用核心数据。
由于
答案 0 :(得分:2)
对于它,您需要通过编程方式修改数据库。意思是,如果你想在数据库中创建/添加新表,那么你需要添加像Create Table这样的代码....在这种情况下,你不能在代码中使用预定义数据库。
但是如果你想使用数据库而不是编写代码,那么你需要重命名数据库并以编程方式将所有旧数据库数据复制到新数据库。
谢谢