11

estoy tratando de poner en práctica CoreData en ios aplicación, Ahora quiero conseguir todos los campos de la Entidad MUSTHAFA¿Cómo obtener todos los registros de CoreData Base utilizando NSManagedObjectSubClass?

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 

agregar registros a la base de datos

-(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 "); 
     }  
} 

Recuperación de todos los valores de Core Data igual que 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; 


} 

Evento de uso (instancia de MUSTAHFA) ¿cómo se puede recuperar todo el registro de la base de datos?

Respuesta

25
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]; 
+0

lo que es NSFetchRequest * petición = [[NSFetchRequest alloc] initWithEntityName: @ "Musthafa"]; línea significa – Musthafa

+0

quiero trabajar como seleccionar * de MUSTAHFA – Musthafa

+5

Eso es lo que hace. Si quieres utilizar CoreData, te sugiero que vayas a través de un tutorial. Aquí hay uno: http://www.raywenderlich.com/934/core-data-on-ios-5-tutorial-getting-started –

6
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 
} 
Cuestiones relacionadas