美文网首页iOS Developer
realm神器的简明入门

realm神器的简明入门

作者: 熊猫啃竹凳 | 来源:发表于2017-04-01 16:05 被阅读43次

    简介

    realm神器作为如今移动端最流行的数据库,是SQLite和CoreData的替代者。可让你不再写SQL语句,其简单,好用

    安装

    最好使用pods,简单快速

    pod 'Realm', '~> 2.2.0'
    

    写入数据

           //person
            DJPerson *personNew = [DJPerson new];
            personNew.name = self.field1.text;
            personNew.age = self.field2.text;
            personNew.IDCard = [NSString stringWithFormat:@"%zd",self.IDCard.intValue];
            personNew.dog = dog;
            
            //save
            RLMRealm *realm = [RLMRealm defaultRealm];
            [realm beginWriteTransaction];
            [realm addObject:personNew];
            [realm commitWriteTransaction];
    

    删除数据

           RLMRealm *realm = [RLMRealm defaultRealm];
            [realm beginWriteTransaction];
            //remove ALL
            [realm deleteAllObjects];
            //remove one
            [realm deleteObject:self.peron1];
            [realm commitWriteTransaction];
    

    修改数据

            RLMRealm *realm = [RLMRealm defaultRealm];
            [realm beginWriteTransaction];
            [realm addOrUpdateObject:self.peron1];
            [realm commitWriteTransaction];
    

    查询数据

          RLMResults *persons = [DJPerson allObjects];
            for (DJPerson *person in persons)
            {
                NSLog(@"%@",person);
            }
    

    Demo地址

    注意点

    1一对多时,子对象不能有主键

    原因可能,子对象继承了一个抽象的模型类,而抽象类定义了一个主键
    2 如果普通对象写入时,因没主键报错,单单加主键后,仍会报错,因为还要数据迁移一下
    3RLMArray不支持block快速遍历,forin快速遍历,否则会报错,即使强转为NSArray也没用,
    另外NSArray装载RLMObject没事

    相关文章

      网友评论

        本文标题:realm神器的简明入门

        本文链接:https://www.haomeiwen.com/subject/exwiottx.html