如何在核心数据上下文中使用预先填充的数据库

时间:2010-08-17 19:05:16

标签: iphone database sqlite core-data

这是我的第一个问题。

好吧,我正在开发一个将使用coredata的iPhone应用程序,但这不是将数据插入应用程序数据库的选项。

我想知道如何预先填充它的数据库。

我想创建一个包含所有信息的plist,如果尚未设置数据库,则将其全部放入coredata数据库...

但我想知道这是否是正确的方法。

谢谢大家。

2 个答案:

答案 0 :(得分:3)

最简单的方法是创建一个具有相同模型的桌面应用程序(甚至完全相同的模型,只需链接它)。然后让Interface Builder为您创建一个默认UI并输入数据。比在设备上这样做容易得多。

获得数据后,请在捆绑包中包含SQLite文件,因为您的应用只能按照声明的方式阅读;将NSPersistentStoreCoordinator指向应用包中的文件,将Bob指定为您的叔叔。

在桌面上创建应用程序大约需要5分钟,这将为您节省更多数据输入时间。

答案 1 :(得分:2)

您可以使用您的设备预先创建数据库文件(sqlite文件),并在分发时将其放入捆绑包中。当您第一次运行应用程序时,您可以从应用程序包中移动它,您可以将其移动到核心数据将读取它的文档目录。

您还可以拥有一个在应用程序首次运行时运行的函数,它从plist中读取并创建相应的对象。