coreData的基本使用

  • CoreData 进行增删改查的时候常用的类:

    NSEntityDescription: 获取实体对象
    NSFetchRequest: 请求体
    NSPredicate: 请求条件
    NSSortDescriptor: 排序

  • 首先

声明一个属性,将UIApplication单例的代理设置为它
   @property(nonatomic,strong)AppDelegate *App;
  self.App = [UIApplication sharedApplication].delegate;
  • CoreData增:
    1.获取实体对象(下面用到)
    NSEntityDescription *entity = [NSEntityDescription entityForName:@"Person" inManagedObjectContext:self.App.managedObjectContext];
    2.初始化的时候使用CoreData的initWithEntity进行初始化
    Person *person = [[Person alloc] initWithEntity:entity insertIntoManagedObjectContext:self.App.managedObjectContext];
    3.给person进行赋值
    Person.name = @"呵呵";
    Person.age = 18;
    4.保存数据库
    [self.App saveContext];
  • CoreData删:
    1.获取实体对象(下面用到)
    NSEntityDescription *entity = [NSEntityDescription entityForName:@"Person" inManagedObjectContext:self.App.managedObjectContext];
    2.创建请求体
    NSFetchRequest *requset = [[NSFetchRequest alloc] init];
    3.创建请求条件
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"age = 18"];
    4.给请求体设置entity属性,还有predicate属性
    requset.entity = entity;
    requset.predicate = predicate;
    5.获取要删除的数据
    NSArray *array = [self.managedObjectContext executeFetchRequest:requset error:nil];
    6.遍历之后,使用deleteObject:删除对象
    for (Student *stu in array) {
        [self.managedObjectContext deleteObject:stu];
    }
    7.保存数据
    [self.App saveContext];
  • CoreData:改
    1.获取实体对象
    NSEntityDescription *entity = [NSEntityDescription entityForName:@"Person" inManagedObjectContext:self.App.managedObjectContext];
    2.创建请求体
    NSFetchRequest *requset = [[NSFetchRequest alloc] init];
    3.创建请求条件
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"age = 18"];
    4.给请求体设置entity属性,还有predicate属性
    requset.entity = entity;
    requset.predicate = predicate;
    5.获取要更改的数据
    NSArray *array = [self.managedObjectContext executeFetchRequest:requset error:nil];
    6.遍历之后,修改要修改的属性
    for (Student *stu in array) {
        stu.name = @"需要修改的内容";
    }
    7.保存数据
   [self.App saveContext];
  • CoreData:查
    1.获取实体对象(下面用到)
    NSEntityDescription *entity = [NSEntityDescription entityForName:@"Person" inManagedObjectContext:self.App.managedObjectContext];
    2.创建请求体
    NSFetchRequest *requset = [[NSFetchRequest alloc] init];
    3.创建请求条件
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"age = 18"];
    4.给请求体设置entity属性,还有predicate属性
    requset.entity = entity;
    requset.predicate = predicate;
    5.获取所查询的内容
    NSArray *array = [self.managedObjectContext executeFetchRequest:requset error:nil];
  • 总结:
    从以上可以看到我们使用coreData对数据库进行操作的增删改查就使用了几个类,步骤都差不多,除了增加数据的时候,其他的基本都是一样的,只要理解以上常用的类,灵活使用就可以对数据进行想要的操作了。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容