iOS   发布时间:2022-05-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了在iPhone应用程序升级部署sqlite DB大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我在iPhone应用程序中使用SQLite作为数据源.我有两个关于应用程序升级的问题. 数据是全部配置/非事务性的.意思是它是唯读的.当我更新/添加配置数据时,我会为应用程序发布升级.当用户获得更新的iPhone应用程序时,原来是否被卸载?如果是这样,我可以确定,因为新的数据库配置数据将被部署.如果不是这样,怎么替换数据? 2.)数据是配置和事务.意思是用户可以将数据保存到数据库中.当用户升级到新@H_874_5@
我在iPhone应用程序中使用sqlite作为数据源.我有两个关于应用程序升级的问题.

数据是全部配置/非事务性的.意思是它是唯读的.当我更新/添加配置数据时,我会为应用程序发布升级.当用户获得更新的iPhone应用程序时,原来是否被卸载?如果是这样,我可以确定,因为新的数据库配置数据将被部署.如果不是这样,怎么替换数据?

2.)数据是配置和事务.意思是用户可以将数据保存到数据库中.当用户升级到新版本的应用程序时,我想维护其现有数据,但是替换所有配置数据.我猜想我需要在应用程序中存储INSERT和updatE脚本来完成此操作.什么是有效的方法呢?

解决方法

cdespinosa已经描述了情景1,所以我会解决#2.

我还没有在iPhone上做到这一点,但是在桌面环境下,最简单的方法是将配置数据保存在一个单独的数据库中.您可以轻松地附加到多个数据库.首先打开你的数据库,这可能是可以改变的数据库.然后sqlite3_exec一个ATTACH语句,看起来像这样

ATTACH 'filepath' AS config;

从那时起,你可以这样做:

SELECT * FROM UserTablename;
SELECT * FROM config.ConfigurationTablename;

我的理解是,如果您写入配置数据库,应用程序将失败签名检查,并且不会启动,并且iPhone附带的sqlite版本已经足够旧,不支持只读标志.因此,您应将配置数据库文件复制到沙箱中,并打开该副本,而不是将其复制到捆绑包中.

(您当然可以使用sql并将值从一个数据库复制到另一个数据库,但是如果您已经将整个配置数据库复制到了沙盒中,那么这应该是一个额外的步骤.只要附上.)

我希望别人能为你提供更多的细节.

大佬总结

以上是大佬教程为你收集整理的在iPhone应用程序升级部署sqlite DB全部内容,希望文章能够帮你解决在iPhone应用程序升级部署sqlite DB所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。