1、新建一个工程,注意不要勾选 Core Data。
2,为项目添加CoreData FrameWork。(点击工程根节点,然后依次Targets > Build Phases > Link Binary With Libraries > + > CoreData.framework > Add)。
3.
创建模型文件:
下面创建一个名为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)。
4.关联model
然后:
自动生成这个model
待一切准备工作就绪后:
在appdelegate里面注册一哈:
[MagicalRecord setupCoreDataStackWithStoreNamed:@"Person.sqlite"];
然后在你想实现的类里面实现增删改查操作
增加:- (IBAction)add:(id)sender {
//向数据库 增加数据 MR_createEntity 是 NSManagedObject第三方库用类别增补
Person * model = [Person MR_createEntity];
model.name = self.nameTF.text;
model.score = self.scoreTF.text;
//最后 同步保存到本地数据库
[[NSManagedObjectContext MR_defaultContext] MR_saveToPersistentStoreAndWait];
}
删除:- (IBAction)dele:(id)sender {
NSArray * arr = [Person MR_findByAttribute:@"name" withValue:self.nameTF.text];
for (Person * model in arr) {
[model MR_deleteEntity];//删除
}
//最后 同步保存到本地数据库
[[NSManagedObjectContext MR_defaultContext] MR_saveToPersistentStoreAndWait];
}
更新:- (IBAction)update:(id)sender {
NSArray * arr = [Person MR_findByAttribute:@"name" withValue:self.nameTF.text];
for (Person * model in arr) {
model.name = self.nameTF.text;
model.score = self.scoreTF.text;
}
//最后 同步保存到本地数据库
[[NSManagedObjectContext MR_defaultContext] MR_saveToPersistentStoreAndWait];
}
查找:- (IBAction)checkone:(id)sender {
[self.dataArr removeAllObjects];
NSArray * arr = [Person MR_findByAttribute:@"name" withValue:self.nameTF.text];
[self.dataArr addObjectsFromArray:arr];
[self.tableView reloadData];
}
查找全部:
- (IBAction)checkall:(id)sender {
[self.dataArr removeAllObjects];
NSArray * arr = [Person MR_findAll];
[self.dataArr addObjectsFromArray:arr];
[self.tableView reloadData];
}