Core Data 在应用程序启动时创建的零 KB SQLite 文件

Posted

技术标签:

【中文标题】Core Data 在应用程序启动时创建的零 KB SQLite 文件【英文标题】:Zero KB SQLite File created by Core Data on application start up 【发布时间】:2010-06-12 21:37:29 【问题描述】:

我正在使用 Core Data 开发一个 iPhone 应用程序。我一切正常,必须对数据库模式进行调整并通过 xcdatamodel 文件更改关系。我在 Library/Application Support/iPhone Simulator/3.1.3//Documents 中删除了我的项目的 sqlite 文件。构建并运行应用程序,它会创建 sqlite 文件,但它是空的,文件大小为 0 KB。至少表信息应该在那里。

控制台中没有错误/警告。

谁知道哪里出了问题?

【问题讨论】:

【参考方案1】:

没有错,表结构将在保存第一个对象时创建。

更新

取决于您如何预填充数据库。如果您在代码中执行此操作,请继续。一旦您将第一个实体保存到磁盘,就会创建这些表,并且它对您完全透明。

如果您不是,请说明您打算如何预填充数据库,我可以从那里提供帮助。

【讨论】:

如果是这种情况,预填充数据库的最佳方法是什么?通过使用 iPhone SDK Development 一书的教程,在我插入我的第一个对象之前,总是使用表创建数据库。为了解决我当前的问题,我不得不重新创建应用程序并且一切正常(我还没有保存数据)。除了第一次保存之外,还有其他操作会强制创建表吗?

以上是关于Core Data 在应用程序启动时创建的零 KB SQLite 文件的主要内容,如果未能解决你的问题,请参考以下文章

应用重新启动时数据不会在 Core Data 中持久化

Restkit + Core Data:每次应用启动时在 UITableView 中插入重复值

Core Data iCloud 同步还是其他?

Core Data 默认使用线程吗?

EF sqlite3报错 "System.Data.Entity.Core.EntityException: 在提供程序连接上启动事务时出错。有关详细信息,请参阅内部异常。

如何为一个非常大的 Core Data 数据库创建一个快速搜索机制?