zoukankan      html  css  js  c++  java
  • CoreData

    插入:

    - (void)insertCoreData2
    {
        NSManagedObjectContext *context = [self managedObjectContext];
        Orange *orange = [NSEntityDescription insertNewObjectForEntityForName:@"Orange" inManagedObjectContext:context];
        
        orange.color = @"org";
        NSError *error;
        BOOL b = [context save:&error];
        NSLog(@"%@",b?@"YES":@"NO");
    }

     查询:

    - (void)getByQuery
    {
        NSManagedObjectContext *context = [self managedObjectContext];
        NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
        [fetchRequest setEntity:[NSEntityDescription entityForName:@"Orange" inManagedObjectContext:context]];
        NSPredicate *predicate = [NSPredicate predicateWithFormat:@"color like[cd]'red'"];
        [fetchRequest setPredicate:predicate];
        [fetchRequest setFetchBatchSize:5];
        [fetchRequest setFetchOffset:0];
        [fetchRequest setFetchLimit:5];
        NSSortDescriptor *sortDesc = [[NSSortDescriptor alloc] initWithKey:@"color" ascending:YES];
        NSArray *sortDescriptors = [NSArray arrayWithObjects:sortDesc, nil];
        [fetchRequest setSortDescriptors:sortDescriptors];
        NSError *error;
        NSArray *fetchedItems = [context executeFetchRequest:fetchRequest error:&error];
        if (fetchRequest == nil) {
            NSLog(@"fetch request resulted in an error: %@,%@ ", error, [error userInfo]);
        }
        for (Orange *orange in fetchedItems) {
            NSLog(@"%@", orange.color);
        }
    }

     更新:

     NSFetchRequest* request=[[NSFetchRequest alloc] init];  
        NSEntityDescription* user=[NSEntityDescription entityForName:@"User" inManagedObjectContext:_myAppDelegate.managedObjectContext];  
        [request setEntity:user];  
        //查询条件  
        NSPredicate* predicate=[NSPredicate predicateWithFormat:@"name==%@",@"chen"];  
        [request setPredicate:predicate];  
        NSError* error=nil;  
        NSMutableArray* mutableFetchResult=[[_myAppDelegate.managedObjectContext executeFetchRequest:request error:&error] mutableCopy];  
        if (mutableFetchResult==nil) {  
            NSLog(@"Error:%@",error);  
        }  
        NSLog(@"The count of entry: %i",[mutableFetchResult count]);  
        //更新age后要进行保存,否则没更新  
        for (User* user in mutableFetchResult) {  
            [user setAge:[NSNumber numberWithInt:12]];  
              
        }  
        [_myAppDelegate.managedObjectContext save:&error];  
        [mutableFetchResult release];  
        [request release]; 
  • 相关阅读:
    四招打造复合型人才
    Eclipse多国语言包的安装
    怎样和人配合(转)
    看海外如何解困建筑信息化(转)
    SSRS重装后不能在SSMS和IIS中打开,报Unauthorized错误的解决办法
    小心调用Replicator, While 和 CAG子活动
    自动备份 SourceSafe
    SQLServer2005新增序列功能的几个函数:ROW_NUMBER, RANK, DENSE_RANK, and NTILE
    分析物语
    定位.Net程序集文件
  • 原文地址:https://www.cnblogs.com/apem/p/4349524.html
Copyright © 2011-2022 走看看