CoreData概述:
<pre>
Core data 是數(shù)據(jù)持久存儲(chǔ)的最佳方式
Core Data 基于MVC模式下,為創(chuàng)建分解的cocoa應(yīng)用程序提供了一個(gè)靈活和強(qiáng)大的數(shù)據(jù)模型框架。
在使用core data框架的時(shí)候,你可以創(chuàng)建一個(gè)管理對(duì)象的模型,該模型提供了對(duì)模型對(duì)象的抽象定義,這也就是我們所知道的entities,它可以在我們的程序中使用。
</pre>
CoreData的構(gòu)成:
<pre>
1)NSManagedObjectContext(被管理的數(shù)據(jù)上下文)
操作實(shí)際內(nèi)容(操作持久層)
作用:插入數(shù)據(jù),查詢數(shù)據(jù),刪除數(shù)據(jù)
2)NSManagedObjectModel(被管理的數(shù)據(jù)模型)
數(shù)據(jù)庫所有表格或數(shù)據(jù)結(jié)構(gòu),包含各實(shí)體的定義信息
作用:添加實(shí)體的屬性,建立屬性之間的關(guān)系
操作方法:視圖編輯器,或代碼
3)NSPersistentStoreCoordinator(持久化存儲(chǔ)助理)
相當(dāng)于數(shù)據(jù)庫的連接器
作用:設(shè)置數(shù)據(jù)存儲(chǔ)的名字,位置,存儲(chǔ)方式,和存儲(chǔ)時(shí)機(jī)
4)NSManagedObject(被管理的數(shù)據(jù)記錄)
相當(dāng)于數(shù)據(jù)庫中的表格記錄
5)NSFetchRequest(獲取數(shù)據(jù)的請(qǐng)求)
相當(dāng)于查詢語句
6)NSEntityDescription(實(shí)體結(jié)構(gòu))
相當(dāng)于表格結(jié)構(gòu)
7)后綴為.xcdatamodeld的包
里面是.xcdatamodel文件,用數(shù)據(jù)模型編輯器編輯構(gòu)成
</pre>
依賴關(guān)系:
基于SQLite數(shù)據(jù)庫時(shí),Core Data的簡(jiǎn)單使用和SQLite的區(qū)別:只能取出整個(gè)實(shí)體記錄,然后分解,之后才能得到實(shí)體的某個(gè)屬性
下面是用CoreData封裝的小demo,供參考
點(diǎn)我