2013-02-13 64 views
0
NSString *strMQueryupdate =[NSString stringWithFormat:@"insert into  Zpatient_info_image_note values ('%@','%@',NULL,'%@')",@"",autoNumberTextField.text,@""]; 

    NSManagedObjectContext *moc = [self managedObjectContext]; 

Patient_info_image_note *patientImageData = (Patient_info_image_note *) [NSEntityDescription insertNewObjectForEntityForName:@"Patient_info_image_note" inManagedObjectContext:moc]; 

patientImageData.autonumber=autoNumberTextField.text; 
[email protected]""; 
[email protected]""; 
patientImageData.noteNumber=NULL; 

[moc save:nil]; 
lastrowid=[[[[patientImageData objectID] URIRepresentation] absoluteString] intValue]; 

patientImageData=nil; 

什麼是這個代碼不正確的?作爲第二選擇,我應該創建另一個coulmn撿回整數從0開始遞增1,然後將它保存到數據庫中,以便下次我可以通過數組的數量檢索最後一個增加的數字。最後行ID始終處於核心數據返回零

回答

1

如果打印的[[[patientImageData objectID] URIRepresentation] absoluteString]的價值,你會得到這樣的:

X-coredata:// 3BB81DA1-4516-45A0-8895-7FD710C74247 /單圈/ P61

努力得到它的intValue會給你0

+0

thanx你的迴應,是否有任何自動增量列提供的核心數據,我可以使用? – 2013-02-13 12:19:19

+0

不,沒有,但有objectID(它是唯一的),但不會幫助你的情況。你可以做的是添加你自己的屬性(一個NSNumber)。然後,只要你願意,你可以使用關鍵字(你的屬性)上的排序描述符對數據數組進行排序,或者獲取maxValue(使用聚合函數'@ max.id')。 – croyneaus4u 2013-02-15 09:34:48