8
如何獲取核心數據中特定模式(管理對象模型)的現有實體(表)的列表。我剛剛開始實施核心數據概念,並堅持這些觀點,請幫助如何獲取核心數據中現有實體(表)的列表
類似於:SELECT COUNT(*)FROM information_schema.tables WHERE table_schema ='dbName';
感謝
如何獲取核心數據中特定模式(管理對象模型)的現有實體(表)的列表。我剛剛開始實施核心數據概念,並堅持這些觀點,請幫助如何獲取核心數據中現有實體(表)的列表
類似於:SELECT COUNT(*)FROM information_schema.tables WHERE table_schema ='dbName';
感謝
您應該通過閱讀Apple's Core Data Programming Guide。要獲得實體特定NSManagedObjectModel
,你可以使用以下的(在此假設你有一個NSManagedObjectModel
命名objectModel
):
NSArray *myEntities = [objectModel entities];
// Array of all entities in the model
或
NSDictionary *myEntities = [objectModel entitiesByName];
// Dictionary of entities in the model, with the entity names as keys
您可以在NSManagedObjectModel Class Reference閱讀更多。
看起來你來自SQL背景(就像我一樣)。核心數據中有許多概念是不同的 - 一旦你理解了它們,有時會更好,有時需要更多的工作而不是你可能習慣的簡單的SQL語句。我認爲在沒有SQL「包袱」的情況下處理核心數據非常重要,並將其視爲您正在學習如何首次使用數據庫 - 這將有助於避免受挫。
感謝大衛,是的,我必須保持SQL;尋找現在的主要分歧。如果您可以推薦一些參考資料(鏈接),將會有所幫助 – 2013-03-28 11:11:37
我最初通過「iOS編程:大型牧場牧場指南」(http://www.bignerdranch.com/book/ios_programming_the_big_nerd_ranch_guide_rd_edition_),這給了一個很好的介紹。從那裏我主要參考了我的答案中鏈接的Apple指南,當然還有大量關於Stack Overflow的搜索。有些專門用於核心數據的書籍,但我還沒有選擇一個。我認爲模型版本之間的遷移是大多數人被絆倒的地方,而Core Data本身往往是最挑剔的,甚至是越野車。 – 2013-03-28 12:11:25