0

我已经使用我在网上找到的一些脚本预先构建了一个特定于 Core Data 的 sqlite 文件。然后我尝试通过插入将该文件用作我的默认sqlite数据库

[MagicalRecord setupCoreDataStackWithStoreNamed:@"database.sqlite"];

在 didFinishLaunchingWithOptions 方法中。但是当我启动我的应用程序时,它似乎创建了一个空数据库。我只是想知道使用 MagicalRecord 加载预建 sqlite 数据库的正确方法是什么?

4

2 回答 2

1

确保您之前的数据存储在 {App Folder}/Library/Application Support/{App Name}/database.sqlite。如果您的商店不存在,MagicalRecord(真的,Core Data)将为您创建一个新的。

如果您希望您的商店在其他地方,您可以使用以下方法:

[MagicalRecord setupCoreDataStackWithStoreAtURL:<NSURL to your store>];

希望这可以帮助。

于 2013-05-07T01:20:24.393 回答
1

我最终从这个教程开始。主要方法是persistentStoreCoordinator。此外,在 didFinishLaunchingWithOptions 方法中,而不是

PatientTableViewController *controller = (PatientTableViewController *)masterNavigationController.topViewController;
controller.managedObjectContext = self.managedObjectContext;

我放

[self managedObjectContext];
[MagicalRecord setupCoreDataStackWithStoreNamed:@"database.sqlite"];

还必须记住将 sqlite 文件和数据模型文件 (.xcdatamodeld) 更改为我拥有的文件。

于 2013-05-08T06:39:24.450 回答