2013-10-04 1 views
0

Привет Я новичок в основных данных, Я хочу знать идентификатор строки, для DISTINCT Value Я написал следующий код:Основные данные строки Первичный ключ Идентификатор DISTINCT Колум

NSEntityDescription *entity = [NSEntityDescription entityForName:@"Student" inManagedObjectContext:self.mangedContext]; 
[request setEntity:entity]; // Set NSEntityDescription object to FetchRequest 
[request setResultType:NSDictionaryResultType]; 
[request setReturnsDistinctResults:YES]; 
[request setPropertiesToFetch:@[@"studentName"]]; 
NSError *requestError = nil; 
NSArray*array = [mangedContext executeFetchRequest:request error:&requestError]; 

Здесь я получение Имя студента Похоже это

{ 
    studentName = xxxx; 

},. 

Но мне нужна Общая строку или что идентификатор строка для этого StudentName = ххого;

Пожалуйста, помогите мне

Спасибо заранее.

ответ

0
NSEntityDescription *entityDescription = [NSEntityDescription 
               entityForName:@"Student" inManagedObjectContext:self.mangedContext]; 
    NSFetchRequest *fetch = [[NSFetchRequest alloc] init]; 

    [fetch setEntity:entityDescription]; 
    [fetch setResultType:NSDictionaryResultType]; 
    [fetch setReturnsDistinctResults:YES]; 

    NSError *error = nil; 

    NSArray *studentDetails =[self.mangedContext executeFetchRequest:fetch error:&error]; // Here you will get entire student table values. 

// Use your NSManagedObject and get particular field value(for ex, id, name) 
Student *student = [studentDetails objectAtIndex:0]; 
NSNumber *studentId = student.stuId; 
1

при использовании CoreData вы управлять с объектами, поэтому нет первичного ключа или строки идентификатора, но каждый объект вы создали имеет ObjectId. Итак, если вы получите от запроса объект Student, то вы можете получить его идентификатор, обратившись к его собственности. student.objectID