WCDB數(shù)據(jù)庫存儲

   首先來看下幾種常見的數(shù)據(jù)庫。蘋果自帶的框架是coreData,可以導(dǎo)入sqlite3使用sqlite數(shù)據(jù)庫。還可以使用FMDB,它是對sqlite數(shù)據(jù)庫的封裝,開發(fā)者不用面對c語言的sqlite開發(fā),使用更加簡單。

一. sqlite數(shù)據(jù)庫:
1、是基于c語言開發(fā)的數(shù)據(jù)庫
2、用c語言對數(shù)據(jù)庫執(zhí)行操作訪問
3、sqlite是動態(tài)的數(shù)據(jù)庫類型,即存儲的時候是一種類型,使用的時候可以存儲為其他類型
4、建立連接之后可以不關(guān)閉連接

二. FMDB
它基于SQLite封裝,對于有SQLite和ObjC基礎(chǔ)的開發(fā)者來說,簡單易懂,可以直接上手;而缺點也正是在此,F(xiàn)MDB只是將SQLite的C接口封裝成了ObjC接口,沒有做太多別的優(yōu)化,即所謂的膠水代碼(Glue Code)。使用過程需要用大量的代碼拼接SQL、拼裝Object,并不方便

三. WCDB
WCDB是微信團(tuán)隊提供一個高效、易用、完整的移動端存儲方案。 它包含三個模塊:
1、WCDB-iOS/Mac
2、WCDB-Android
3、數(shù)據(jù)庫損壞修復(fù)工具WCDBRepair
在理解WCDB之前,先來看下類字段綁定(ORM-Object Relational Mapping),在WCDB內(nèi),ORM是指

  1. 將一個ObjC的類,映射到數(shù)據(jù)庫的表和索引;
  2. 將類的property,映射到數(shù)據(jù)庫表的字段.
    這一過程。通過ORM,可以達(dá)到直接通過Object進(jìn)行數(shù)據(jù)庫操作,省去拼裝過程的目的。

將一個已有的ObjC類進(jìn)行ORM綁定的過程如下:

  • 使用WCDB_PROPERTY宏在頭文件聲明需要綁定到數(shù)據(jù)庫表的字段。
  • 使用WCDB_IMPLEMENTATIO宏在類文件定義綁定到數(shù)據(jù)庫表的類。
  • 使用WCDB_SYNTHESIZE宏在類文件定義需要綁定到數(shù)據(jù)庫表的字段。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

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

  • 前言 移動端的數(shù)據(jù)庫選型一直是一個難題,直到前段時間看到了WeMobileDev(微信前端團(tuán)隊)放出了第三個開源組...
    上冬十二閱讀 3,243評論 1 5
  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹(jǐn) 對...
    cosWriter閱讀 11,650評論 1 32
  • 本文參考iOS SQLite、CoreData、FMDB數(shù)據(jù)庫詳解,非常感謝該作者 序言 在iOS開發(fā)中數(shù)據(jù)存儲的...
    路飛_Luck閱讀 3,328評論 0 5
  • @木辰:怎么才能向高處攀登?是否意味著努力學(xué)習(xí)呢? @諾米:知道了,可是不知道努力的方向 @brave:你好,這學(xué)...
    一只禪師閱讀 326評論 0 4
  • 親愛的某先生: 這是我寫給你的第二封情書。 昨天睡得太晚,早晨又被早早吵醒。外面不知誰的車被擋了路,按喇叭按到能吵...
    許小慢慢閱讀 400評論 0 3

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