2010-08-13 7 views
0

J'utilise CoreData pour stocker des données, et j'ai quelques entités. comment puis-je faire des instructions personnalisées via CoreData? donc exactement je veux dire que je ne veux pas aller chercher tous les enregistrements dans datatable mais par exemple "tous les éléments où keyValue = quelque chose" et pas plus. ou par exemple les 3 derniers éléments. etc, etc alors de quelle façon puis-je faire des déclarations personnalisées pour récupérer les données requises?Récupération personnalisée de CoreData (pas toutes les données) iPhone

Répondre

1
// Init your fetchRequest 
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init]; 

NSEntityDescription *entityDescription = [NSEntityDescription entityForName:@"entityName" inManagedObjectContext:yourManagedObjectContext]; 

// create the relation between request and the created entity 
[fetchRequest setEntity:entityDescription]; 

// Set your predicate for this request 
NSPredicate *somePredicate = [NSPredicate [email protected]"%K == %@", @"name", @"John"]; 
[fetchRequest setPredicate:somePredicate]; 

// Pushing the results into a array 
NSError *error = nil; 
NSArray *fetchResults = [yourManagedObjectContext executeFetchRequest:fetchRequest error:&error]; 

[fetchRequest release]; 

Cet exemple chercher tous les documents de l'entité "entityName", qui attribut "name" est égal à "John"

Questions connexes