IOS coredata基础
2017-05-05 17:14
253 查看
coredata是OC语言对于SQlite的又一次封装,支持自定义对象添加到关系型数据库的表中。sqlite只支持基础数据类型的添加
下面我们一起通过一个demo来学习一下如何使用coredata
首先新建工程需要勾选上use coredata
然后添加实体,也就是要添加的一张表
按照下图步骤修改实体名,以及添加实体,也就是表中的字段
生成实体,也就是生成表
编译调试,如果报错删除下图对应代码
好了,准备工作完成,接下来我们就可以使用coredata了。还是使用增删改查功能。
首先导入需要的头文件
下面我们来测试一下coredata使用情况
点击添加,再点击查询,结果如下:
然后点击删除,在查询
然后点击修改,在查询
完全符合预期。可以看到coredata可以正常使用
下面我们一起通过一个demo来学习一下如何使用coredata
首先新建工程需要勾选上use coredata
然后添加实体,也就是要添加的一张表
按照下图步骤修改实体名,以及添加实体,也就是表中的字段
生成实体,也就是生成表
编译调试,如果报错删除下图对应代码
好了,准备工作完成,接下来我们就可以使用coredata了。还是使用增删改查功能。
首先导入需要的头文件
#import "Person+CoreDataProperties.h" #import "AppDelegate.h"
case 0:{//增加数据 Person *p = [NSEntityDescription insertNewObjectForEntityForName:@"Person" inManagedObjectContext:app.persistentContainer.viewContext]; p.name = @"李四"; p.age = 32; Person *p1 = [NSEntityDescription insertNewObjectForEntityForName:@"Person" inManagedObjectContext:app.persistentContainer.viewContext]; p1.name = @"李san"; p1.age = 11; Person *p2 = [NSEntityDescription insertNewObjectForEntityForName:@"Person" inManagedObjectContext:app.persistentContainer.viewContext]; p2.name = @"旺旺"; p2.age = 21; [app saveContext]; } break;
case 1://删除 { NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"Person"]; NSArray *persons = [app.persistentContainer.viewContext executeFetchRequest:request error:nil]; for (Person *p in persons) { // if ([p.name isEqualToString:@"李san"]) { [app.persistentContainer.viewContext deleteObject:p]; [app saveContext]; // } } } break;
case 2://修改 { NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"Person"]; NSArray *persons = [app.persistentContainer.viewContext executeFetchRequest:request error:nil]; for (Person *p in persons) { if ([p.name isEqualToString:@"李四"]) { p.name = @"王五"; p.age = 88; [app saveContext]; } } } break;
case 3://查询 { NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"Person"]; NSArray *persons = [app.persistentContainer.viewContext executeFetchRequest:request error:nil]; for (Person *p in persons) { NSLog(@"%@ %d %@",p.name,p.age,p.objectID); } } break; }
下面我们来测试一下coredata使用情况
点击添加,再点击查询,结果如下:
然后点击删除,在查询
然后点击修改,在查询
完全符合预期。可以看到coredata可以正常使用
相关文章推荐
- iOS教程:Core Data数据持久性存储基础教程
- IOS-Coredata 核心数据库的基础使用
- [ios开发基础之 Core Data[3]]如何使用NSFetchedResultsController 来集成TableView操作
- #iOS# Core Data基础
- IOS CoreData基础
- iOS 认识CoreData-基础
- [ios开发基础之 Core Data [1] ]Core Data数据持久性存储基础教程
- iOS基础教程:在建好的项目中加入CoreData[转]
- iOS-Core Data基础
- IOS成长之路-CoreData基础
- [ios开发基础之CoreData[4]]CoreData实战篇
- [ios开发基础之CoreData[4]]CoreData深入分析篇
- iOS教程:Core Data数据持久性存储基础教程
- iOS教程:Core Data数据持久性存储基础教程
- iOS教程:Core Data数据持久性存储基础教程
- iOS教程:Core Data数据持久性存储基础教程
- Xcode 4.5和iOS 6 - Core Data 持久化数据存储
- Core Data on iOS 5 Tutorial: Getting Started
- ios简单使用core data
- Core Data on iOS 5 Tutorial: Getting Started