Coredata數(shù)據(jù)庫的簡單認(rèn)識(shí)和使用

簡介

Core Data是iOS5之后才出現(xiàn)的一個(gè)框架,對SQLite的一個(gè)升級(jí),它提供了對象-關(guān)系映射(ORM)的功能,即能夠?qū)C對象轉(zhuǎn)化成數(shù)據(jù),保存在SQLite數(shù)據(jù)庫文件中,也能夠?qū)⒈4嬖跀?shù)據(jù)庫中的數(shù)據(jù)還原成OC對象。在此數(shù)據(jù)操作期間,我們不需要編寫任何SQL語句,這個(gè)有點(diǎn)類似于著名的Hibernate持久化框架,不過功能肯定是沒有Hibernate強(qiáng)大的。

在CoreData中使用的幾個(gè)類。

(1)NSManagedObjectModel(被管理的對象模型)

相當(dāng)于實(shí)體,不過它包含 了實(shí)體間的關(guān)系

(2)NSManagedObjectContext(被管理的對象上下文)

操作實(shí)際內(nèi)容

作用:插入數(shù)據(jù)? 查詢? 更新? 刪除

(3)NSPersistentStoreCoordinator(持久化存儲(chǔ)助理)

相當(dāng)于數(shù)據(jù)庫的連接器

(4)NSFetchRequest(獲取數(shù)據(jù)的請求)

相當(dāng)于查詢語句

(5)NSPredicate(相當(dāng)于查詢條件)

(6)NSEntityDescription(實(shí)體結(jié)構(gòu))

(7)后綴名為.xcdatamodel的包

里面的.xcdatamodel文件,用數(shù)據(jù)模型編輯器編輯

編譯后為.momd或.mom文件,這就是為什么文件中沒有這個(gè)東西,而我們的程序中用到這個(gè)東西而不會(huì)報(bào)錯(cuò)的原因

Core Data的創(chuàng)建

首先建一個(gè)工程文件,勾選使用Coredata,然后創(chuàng)建實(shí)體表如圖:

1.1

創(chuàng)建完成后,新建一個(gè)file,記得是NSManagedObject cubclass,XCode8直接點(diǎn)擊editor創(chuàng)建

創(chuàng)建完成后由四個(gè)文件

創(chuàng)建一個(gè)繼承NSObject類,聲明三個(gè)方法,分別是插入、查詢、刪除

//插入

+ (BOOL)insertObjectWithParamter:(NSDictionary*)parameters entityName:(NSString*)entityName;

//查詢

+ (NSArray*)readWithEntityName:(NSString*)entityName predicate:(NSString*)predicateString;

//刪除

+ (BOOL)removeWithEntityName:(NSString*)entityName predicate:(NSString*)predicateString;



最后在需要的地方調(diào)用這個(gè)三個(gè)方法,就可以實(shí)現(xiàn)添、查詢、刪除的操作了

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容