数据库:CoreData之MagicalRecord

最简单的MagicalRecord使用步骤,大神请绕道

步骤1                导入MagicalRecord包,点击文字到Github上下载即可。

Magical Record project   ——  Github

步骤2               在PCH文件中导入头文件

步骤3               在  AppDelegate.m  设置本地数据库信息

步骤4      创建模型文件

下面创建一个名为Person的模型,有age、firstname、lastname三个字段。

  1. 创建一个名为Model的模型文件。 (File > New File… > Core Data > Data Model)
  2. 点击左下角的Add Entity,更改Entity的名字为Person。
  3. 为Entity添加三个Attribute:age(Integer16)、firstname(string)、lastname(string)。

MagicalRecord创建实体

  1. 点击Editor > Create NSManagedObject Subclass… > Create创建模型文件对应的类。(以下为直接创建的,类似于创建普通文件一样)

创建模型实体

注意:int类型数据,必须使用NSNumber,因为在coreData中保存的必须为对象。

步骤5      保存数据

步骤6       读取数据

奇技淫巧:(来自网络)

  • 启动时MR_mergedObjectModelFromMainBundle方法报错

Core Data的模型有版本的概念,有可能在你Magical Record第一次初始化完成以后,你又更改了模型文件,导致Core Data去合并模型报错。解决办法很简单,点击菜单中的Project->Clean即可。

  • 项目使用ARC后,编译Magical Record不通过

点击项目 -> Build Phases -> Compile Sources中, 双击报错的class文件, 编辑Compiler Flags加入 -fno-objc-arc。

  • 不想使用MR_前缀

只需要在*-Prefix.pch文件中添加一句#define MR_SHORTHAND即可,注意这句要在#import “CoreData+MagicalRecord.h”之前。

总结:

 的评价是:

And even though Magical Record revolves around a simple concept, it’s incredibly powerful, in particular in a multi-threaded environment by providing a high abstraction level to avoid the headache.

其实,根据我的感觉是,比起FMDB,这种告别了SQL语句的数据库操作,完全的纯OC语法对于一个像我这样对SQL略知皮毛的人来讲,解决的不只是头疼的问题这么简单。

 

 

参考文章: Magical Record: how to make programming with Core Data pleasant

推荐文章:CORE DATA AND THREADS, WITHOUT THE HEADACHE  (域名意为:Cocoa Is My Girlfriend)

 

卫博生-惜丝丝缘分,爱点滴生活!

发表评论

电子邮件地址不会被公开。 必填项已用*标注