0

使用核心数据时,我将如何将值插入数据库,甚至与数据库交互。有没有一个很好的教程?我已经阅读了 Core Data 教程,但大多数文件都是在本地完成的。

更新
我上一个问题中的某个人回答了这个这
"Core Data can use a database to accomplish this, but that's it's business, not yours. When you use Core Data, it is a black box. You tell it to save the data and then step out of the way."
是否意味着它会自动为我做数据库方面的工作?

谢谢!

4

2 回答 2

1

核心数据是一个黑盒子,因为它是一个面向对象的 API,用于与设备(和 iCloud)上的 SQLite 数据库进行交互。如果您要推送到具有 SQL 数据库后端的 Web 服务......好吧,我已经为提供休息接口的 Web 服务使用了 php 控制器。然后我从我的设备获取数据并点击其余控制器方法,在 http 帖子中传递任何适合作为参数的数据。不确定这是一般做法还是最佳做法,但根据我的经验,我们就是这样做的

于 2012-10-10T02:53:05.833 回答
0

Core Data 不是数据库管理器,它不仅仅与您的数据库交互。至少,您应该将 Core Data 视为 ORM。或许,理解 Core Data 的最佳方式是将其视为图形管理员。您将通过上下文 ( NSManagedObjectContext) 与核心数据进行交互,这将允许您从中获取对象,并插入、编辑和删除它们。对象是 的子类NSManagedObject。要关心的一件重要事情是线程。NSManagedObject不是线程安全的,你不应该在线程之间传递它们。采用NSManagedObjectsIDs 代替。重要的是,你不需要关心核心数据如何存储东西,你可以设置存储的格式,但仅此而已(在这方面,你在选择存储时确实需要考虑一些事情,比如性能,以及是否需要在运行之间持久化数据,但让 Core Data 处理细节)。

如果你想了解更多,Marcus Zarra 的书非常棒

于 2012-10-10T03:23:32.873 回答