【问题标题】:How to get all records From CoreData Base using NSManagedObjectSubClass?如何使用 NSManagedObjectSubClass 从 CoreData Base 获取所有记录?
【发布时间】:2012-05-05 01:37:52
【问题描述】:

我正在尝试在ios 应用程序中实现CoreData,现在我想从实体MUSTHAFA 获取所有记录

  My  NSManagedObjectedSubClass is MUSTAHFA

MUSTHAFA.m

#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>

@interface MUSTHAFA : NSManagedObject {
@private
}
@property (nonatomic, retain) NSString * FirstName;
@property (nonatomic, retain) NSNumber * Age;
@property (nonatomic, retain) NSString * Location;
@property (nonatomic, retain) NSString * LastName;

@end

#import "MUSTHAFA.h"


@implementation MUSTHAFA
@dynamic FirstName;
@dynamic Age;
@dynamic Location;
@dynamic LastName;

@end

向核心数据添加记录

-(void)AddRecordToCoreData{

    //NSLog(@"______ ADD Core Data Implementaion");  
    MUSTHAFA *event = (MUSTHAFA *)[NSEntityDescription insertNewObjectForEntityForName:@"MUSTHAFA" inManagedObjectContext:managedObjectContext];
    [event setLastName:@"JOHN"];
    [event setFirstName:@"JOSE "];
    [event setLocation:@"IDUKKI "];
    [event setAge:[NSNumber numberWithInt:25]];    
    NSError *error;
    if (![managedObjectContext save:&error]) 
        {       
        NSLog(@"Error..%@",error);
    }
       else
       {
        NSLog(@"Data added to MUSTHAFA ");
       }      
}

从 Core Data 中检索所有值,就像 select * from dbTable;

-(void)FetchRecordFromCoreData:(id)data1{

     //NSLog(@"______ Fetch Core Data Implementaion");  
    MUSTHAFA *event = (MUSTHAFA *)[NSEntityDescription insertNewObjectForEntityForName:@"MUSTHAFA" inManagedObjectContext:managedObjectContext];

   //USING event how can fetch all record from Data base;


}

USING 事件(MUSTAHFA 实例)如何从数据库中获取所有记录?

【问题讨论】:

    标签: objective-c ios core-data nsmanagedobject nsmanagedobjectcontext


    【解决方案1】:
    NSManagedObjectContext *context = //Get it from AppDelegate
    
    NSFetchRequest *request = [[NSFetchRequest alloc]initWithEntityName:@"MUSTHAFA"];
    
    NSError *error = nil;
    
    NSArray *results = [context executeFetchRequest:request error:&error];
    
    if (error != nil) {
    
       //Deal with failure
    }
    else {
    
       //Deal with success
    }
    
    [request release];
    

    【讨论】:

    【解决方案2】:
    AppDelegate *delegate = [UIApplication sharedApplication].delegate;
    
    NSManagedObjectContext *context =[delegate managedObjectContext];
    
    NSFetchRequest *request = [[NSFetchRequest alloc]initWithEntityName:@"Channels"];
    
    NSError *error = nil;
    NSArray *results = [context executeFetchRequest:request error:&error];
    
    ChannelDBArray=[[NSMutableArray alloc]init];
    
    for (NSManagedObject *obj in results) {
    
    
        NSArray *keys = [[[obj entity] attributesByName] allKeys];
        NSDictionary *dictionary = [obj dictionaryWithValuesForKeys:keys];
    
    }
    if (error != nil) {
    
        //Deal with failure
    }
    else {
    
        //Deal with success
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多