【问题标题】:How to save SQLite file from Documents directory back to main bundle in objective C?如何将 SQLite 文件从 Documents 目录保存回目标 C 中的主包?
【发布时间】:2015-11-17 09:04:43
【问题描述】:

更新数据库后如何将 sqlite 文件复制回主包?现在我将 sqlite 文件复制到 Documents 目录中,插入新记录而不是从中选择全部,我可以看到数据在那里,旧的和新的。如何更新我复制的主数据库?感谢您的时间和帮助。

【问题讨论】:

    标签: ios objective-c sqlite


    【解决方案1】:

    实际上,您无法更改应用程序包文件。一旦您更改了应用程序包文件,它就会使应用程序标志无效,并且将不再安装。您必须将应用程序包文件复制到 App Documents 目录并始终使用文档目录中的文件。

    https://stackoverflow.com/a/4764638/5019395

    【讨论】:

    • 是的,我修好了。我一直在覆盖数据库,这就是为什么我看不到变化。现在它工作正常。
    • 我刚做了.. 但是之前的答案也对我有帮助,所以我给了大家+1。 :)
    • 哦..酷。谢谢你,马特..会保持联系。
    【解决方案2】:

    不,您不能将 sqlite 文件复制回主包,因为应用包是只读的!

    【讨论】:

    • 如何在更改后更新 sqlite 数据库?因为当我关闭应用程序时,数据库与开始时相同。未保存任何更改。
    • 您必须检查是否已将数据库从捆绑包复制到 Documents 目录。如果有,请不要覆盖它。
    • @mattkoder 如果文档中不存在 sqlite 文件,只需将其复制到文档目录
    • 我觉得自己像个菜鸟...谢谢。我需要这行代码: if (![fileManager fileExistsAtPath:copyDBPath]) { }
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-11-08
    • 2017-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-19
    • 1970-01-01
    相关资源
    最近更新 更多