使用SQLite.swift项目实践

为什么要写这篇文章呢?因为第一次使用SQLite.swift建立数据库;一开始都不会,最开始是GitHub上看文档;但我发现里面讲得很浅根本满足不了我的需求。然后去百度google,我发现这个玩意儿好像很不受欢迎,或者说很新鲜,还是说大家习惯了使用FMDB(我这人有个洁癖使用Swift开发绝不使OC的第三方库,我就喜欢Swift用Swift的,OC 用OC的)能参考的资料屈指可数。由于我也不是特别精通这里我只列举我项目的一些用法。

1.创建数据库表的存放路径


使用SQLite.swift项目实践_第1张图片
QQ20170905-103915.png

2.创建表
2.1创建表之前要设计表,决定需要哪些键: 由于我做的是缓存微博首页的数据,首先有一个主键statusId 每条微博的微博id; 其次每条微博的内容statusText,这里我把那条微博对应的JSON字典转换成了字符串存放; 然后是每个用户userId的Id,用来记录是否是当前登录用户;最后是插入数据库的时间createTime,要做定时清除避免缓存过大。
在创表之前先定义这几个属性


使用SQLite.swift项目实践_第2张图片
QQ20170905-104851.png

2.2创表


使用SQLite.swift项目实践_第3张图片
QQ20170905-105343.png

3.插入数据
使用SQLite.swift项目实践_第4张图片
QQ20170905-105557.png

4.根据条件查询数据 如何创建多个筛选条件让我很头疼
多个条件通过表对象table &&拼接而且这个属性的类型很坑逼什么 Expression还需要转一下!

table.filter(self.userId == Expression(userId) &&
self.statusId <= Expression(statusId))
.order(self.statusId.desc) //排序 微博id倒序
.limit(20)//一次取20条数据
完了之后用数据库连接对象prepre就可以拿到结果


使用SQLite.swift项目实践_第5张图片
QQ20170905-110221.png

5.根据条件删除数据


使用SQLite.swift项目实践_第6张图片
QQ20170905-110429.png

你可能感兴趣的:(使用SQLite.swift项目实践)