如何更新SQLite DB在iPhone应用程序更新?
发布时间:2020-12-12 19:03:51 所属栏目:百科 来源:网络整理
导读:我目前在iTunes应用商店中使用一个iPhone应用程序,它使用SQLite数据库作为数据存储.用户可以将应用程序与Web服务同步,然后将返回的数据存储在SQLite数据库中.用户还可以将新项目插入数据库,并将其更改同步到Web服务. 当连接打开到应用程序的本地数据库时,代
我目前在iTunes应用商店中使用一个iPhone应用程序,它使用SQLite数据库作为数据存储.用户可以将应用程序与Web服务同步,然后将返回的数据存储在SQLite数据库中.用户还可以将新项目插入数据库,并将其更改同步到Web服务.
当连接打开到应用程序的本地数据库时,代码检查确认数据库文件是否存在于“文档”文件夹中,如果没有通过从“资源”文件夹复制到“文档”创建数据库,夹. 我必须向应用程序发布更新.该更新包含数据库模式更改(新表,列等).从我所看到的,“Documents”目录中的文件将保留在应用程序更新中,这意味着现有的数据库在更新后仍将保持不变. 我的问题是,如何用已更新的数据库替换现有的数据库,有没有办法,而不会丢失现有数据库中的数据?有没有某种“第一次运行后更新”事件我可以使用来做数据库更新,或者我必须对现有数据库进行某种检查(查找新的列或表),如果我的检查失败手动替换/更新数据库? 谢谢! 您应该将应用程序的当前版本号存储在数据库中,或者更好地存储在默认数据库中.在启动时,您的应用程序会将其自己的版本号与持久版本号进行比较.如果它们不同,那么这是更新后的第一个运行.如果持久化的版本号不存在,那么这显然也是更新后的第一个运行.至于更新数据库,如果它已经到位,您将使用通常的SQL ALTER命令来更新模式,并同时进行任何数据库数据迁移. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |