iphone - 是否可以在 iPhone 应用程序中覆盖 sqlite 数据库

标签 iphone objective-c ios5 sqlite

我已经创建了基于Sqlite数据库的应用程序。

因此,在我的应用程序中,最初我使用一个数据创建了 Sqlite 数据库,并将该数据库添加到项目中的“资源”文件夹中。

当应用程序第一次运行时,检查文档文件夹(沙箱)中的数据库,如果没有文件意味着,将数据库从资源复制到文档文件夹。

此后,仅在文档文件夹中的数据库上执行每个插入和删除操作。不在资源文件夹中的数据库上。

因此,我已在数据库中插入了 50 个项目,然后我已从模拟器(或)设备中删除了该应用程序。

删除应用程序时,数据库也随之删除。

我的问题是==>当应用程序中的每次更新(插入、删除)时,如何用数据库(在文档文件夹中)覆盖Sqlite数据库(在资源文件夹中)?

因为文档文件夹中的数据库文件在向其中插入项目时会更新。

我正在使用 XCode 4.2 和 iOS 5 sdk。

最佳答案

创建后无法更改资源包(即应用文件)。您无法将 SQLite 数据库覆盖到 bundle 的资源文件夹中。

如果您仍然想保留以前的数据库,那么只需从模拟器路径复制它,并在清理和构建应用程序时进行替换。

编辑:

您可以前往/Users//Library/Application Support/iPhone Simulator/“您使用的模拟器版本”/Application/”检查所有文件夹以在其中找到您的应用程序此文件夹”/“您的 APP.app”

然后右键单击APP文件并单击显示包内容。现在您将能够在App文件中看到您使用的资源。您可以搜索您的数据库并备份/替换它。

关于iphone - 是否可以在 iPhone 应用程序中覆盖 sqlite 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9076383/

相关文章:

iphone - 难以使 UIKeyboard 在 UINavigationController 中消失

iphone - ios bundle id 问题以启动第一个 facebook 应用程序

iphone - 使用默认选项卡 Controller 创建的项目...第一个 View Controller 不响应 addsubview

ios - xcode 9.2 中的 "No provisioning profile required",同时在应用商店上传应用

ios - 应用程序启动期间 UITabBarController 顶部的 ModalView

iphone - UiTableViewCell 中的顶部像素没有正确的背景颜色

iphone - 在 iPhone 中查找周数

iphone - (iphone)自动旋转不会改变我的 View 大小

iphone - 在 NSMutableDictionary 中存储变量值

iphone - 使用 NSURL 访问本地文件