簡介
Core Data是iOS5之后才出現的一個框架,對SQLite的一個升級,它提供了對象-關系映射(ORM)的功能,即能夠將OC對象轉化成數據,保存在SQLite數據庫文件中,也能夠將保存在數據庫中的數據還原成OC對象。在此數據操作期間,我們不需要編寫任何SQL語句,這個有點類似于著名的Hibernate持久化框架,不過功能肯定是沒有Hibernate強大的。
在CoreData中使用的幾個類。
(1)NSManagedObjectModel(被管理的對象模型)
相當于實體,不過它包含 了實體間的關系
(2)NSManagedObjectContext(被管理的對象上下文)
操作實際內容
作用:插入數據? 查詢? 更新? 刪除
(3)NSPersistentStoreCoordinator(持久化存儲助理)
相當于數據庫的連接器
(4)NSFetchRequest(獲取數據的請求)
相當于查詢語句
(5)NSPredicate(相當于查詢條件)
(6)NSEntityDescription(實體結構)
(7)后綴名為.xcdatamodel的包
里面的.xcdatamodel文件,用數據模型編輯器編輯
編譯后為.momd或.mom文件,這就是為什么文件中沒有這個東西,而我們的程序中用到這個東西而不會報錯的原因
Core Data的創建
首先建一個工程文件,勾選使用Coredata,然后創建實體表如圖:
創建完成后,新建一個file,記得是NSManagedObject cubclass,XCode8直接點擊editor創建
創建完成后由四個文件
創建一個繼承NSObject類,聲明三個方法,分別是插入、查詢、刪除
//插入
+ (BOOL)insertObjectWithParamter:(NSDictionary*)parameters entityName:(NSString*)entityName;
//查詢
+ (NSArray*)readWithEntityName:(NSString*)entityName predicate:(NSString*)predicateString;
//刪除
+ (BOOL)removeWithEntityName:(NSString*)entityName predicate:(NSString*)predicateString;
最后在需要的地方調用這個三個方法,就可以實現添、查詢、刪除的操作了