我正在实施基于导航的应用程序。用户将深入到感兴趣的节点。我正在使用Core Data,主要是因为我想尝试一下。如何最初加载数据库?我应该编写最初加载数据库的自定义代码,还是有一些工具可以帮我完成?
答案 0 :(得分:17)
答案 1 :(得分:3)
没有用于将数据导入Core Data上下文的自动(即内置)方法。
我怀疑这是因为Core Data实际上是一个对象图管理框架(恰好能够将该对象图持久化到磁盘)并且数据和对象实例之间的映射依赖于模式(因此需要至少一些代码)。
如果您已经拥有其他格式的数据,则应阅读importing data into a Core Data context上的“核心数据编程指南”部分。如果您还没有其他格式的数据,则必须以任何方式编写代码(生成中间格式或直接填充上下文)。
最后,虽然它不是真正的公共API,但核心数据XML格式很容易手工或使用任意数量的基于XML的工具。根据数据的复杂程度,您可以对XML模式进行反向工程,以生成XML支持的持久存储。然后,您可以将此商店迁移到SQLite持久性商店,然后就可以了。
答案 2 :(得分:0)
目前据我所知,您必须编写自定义代码来填充数据库。
这似乎是一个缺点,我真的很想看到一个工具,用于批量(shell)预先填充数据源,供CoreData使用。