我目前在iTunes应用商店中使用一个iPhone应用程序,它使用sqlite数据库作为数据存储.用户可以将应用程序与Web服务同步,然后将返回的数据存储在sqlite数据库中.用户还可以将新项目插入数据库,并将其更改同步到Web服务.
当连接打开到应用程序的本地数据库时,代码检查确认数据库文件是否存在于“文档”文件夹中,如果没有通过从“资源”文件夹复制到“文档”创建数据库,夹.
我必须向应用程序发布更新.该更新包含数据库模式更改(新表,列等).从我所看到的,“Documents”目录中的文件将保留在应用程序更新中,这意味着现有的数据库在更新后仍将保持不变.
我的问题是,如何用已更新的数据库替换现有的数据库,有没有办法,而不会丢失现有数据库中的数据?有没有某种“第一次运行后更新”事件我可以使用来做数据库更新,或者我必须对现有数据库进行某种检查(查找新的列或表),如果我的检查失败手动替换/更新数据库?
谢谢!