為什么要寫這篇文章呢?因為第一次使用SQLite.swift建立數(shù)據(jù)庫;一開始都不會,最開始是GitHub上看文檔;但我發(fā)現(xiàn)里面講得很淺根本滿足不了我的需求。然后去百度google,我發(fā)現(xiàn)這個玩意兒好像很不受歡迎,或者說很新鮮,還是說大家習(xí)慣了使用FMDB(我這人有個潔癖使用Swift開發(fā)絕不使OC的第三方庫,我就喜歡Swift用Swift的,OC 用OC的)能參考的資料屈指可數(shù)。由于我也不是特別精通這里我只列舉我項目的一些用法。
1.創(chuàng)建數(shù)據(jù)庫表的存放路徑

2.創(chuàng)建表
2.1創(chuàng)建表之前要設(shè)計表,決定需要哪些鍵: 由于我做的是緩存微博首頁的數(shù)據(jù),首先有一個主鍵statusId 每條微博的微博id; 其次每條微博的內(nèi)容statusText,這里我把那條微博對應(yīng)的JSON字典轉(zhuǎn)換成了字符串存放; 然后是每個用戶userId的Id,用來記錄是否是當(dāng)前登錄用戶;最后是插入數(shù)據(jù)庫的時間createTime,要做定時清除避免緩存過大。
在創(chuàng)表之前先定義這幾個屬性

2.2創(chuàng)表

3.插入數(shù)據(jù)

4.根據(jù)條件查詢數(shù)據(jù) 如何創(chuàng)建多個篩選條件讓我很頭疼
多個條件通過表對象table &&拼接而且這個屬性的類型很坑逼什么 Expression還需要轉(zhuǎn)一下!
table.filter(self.userId == Expression(userId) &&
self.statusId <= Expression<Int64>(statusId))
.order(self.statusId.desc) //排序 微博id倒序
.limit(20)//一次取20條數(shù)據(jù)
完了之后用數(shù)據(jù)庫連接對象prepre就可以拿到結(jié)果

5.根據(jù)條件刪除數(shù)據(jù)
