登录 立即注册
金钱:

Code4App-iOS开发-iOS 开源代码库-iOS代码实例搜索-iOS特效示例-iOS代码例子下载-Code4App.com

一行代码操作数据库:CWDB

[复制链接]
来自: Chavez 分类: iOS精品源码 上传时间: 2018-1-2 09:38:50
Tag:

项目介绍:

前言

我们从0开始封了一个面向OC模型的数据库就要结束了,开发工作其实在上一篇就做完了,之后做了一些小的优化以及代码的调整来发布这篇文章,先看一下我们最终形态。

  • 直接: 调用sqlite原生API操作数据库,没有中间框架。

  • 易用: 一行代码实现数据库增删查改操作。

  • 多元: 支持所有基本数据类型、集合类型以及自定义模型。

  • 智能: 一行代码,智能实现插入、更新、升级、迁移数据。

  • 强大: 0代码支持数组嵌套模型、嵌套字典,字典嵌套模型等相互嵌套。

  • 灵活: 支持多种查询、删除操作,支持使用sql语句查询、删除。

  • 还原: 存入数据库时为A模型,查询的数据一定还给你A模型。

我们支持的类型有

所有的基本数据类型(int,float),NSNumber,NSArray,NSMutableArray,NSDictionary,NSMutableDictionary,
UIImage,NSURL,UIColor,NSSet,NSRange,NSAttributedString,NSData,自定义模型,以及数组、字典、模型相互嵌套

图片描述

这篇文章,将全方位介绍我们数据库--CWDB以及如何使用!

架构

类名作用
CWModelProtocol.h需要遵守以及实现的协议方法(用户关注)
CWSqliteModelTool.h、CWSqliteModelTool.m本库操作数据库的所有API(用户关注)
CWDatabase.h、CWDatabase.m直接调用sqlite底层API的类
CWModelTool.h、CWModelTool.m处理模型的工具类
CWSqliteTableTool.h、CWSqliteTableTool.处理数据库表的工具类

在使用前,我们先模拟一个对应的使用场景,要解决什么问题,这个场景也是我们demo中的演示代码所展现的(你可以打开demo在Clasess目录下找到它)。

我们希望保存几所学校的资料到数据库。

  • 用一个类来表示学校的资料,资料有学校id,名字,整个学校的所有班级,最好的班级,最优秀的老师的资料。

  • 有对应类来表示班级的资料,班级里面有班级号,名称,班级的所有老师,班级的所有学生,班主任以及班长。

  • 又分别有两个类保存学生和老师的资料

以上的层级关系有模型嵌套数组嵌套模型的场景、模型嵌套模型再嵌套数据再嵌套模型的场景也就模型直接嵌套模型的场景。

然后我们使用工厂方法来快速构造各个模型,用来搭建整个学校

  • 首先,所有的学生都是身高168,年龄20,体重100,性格温和乖巧的女同学

  • 其次,所有的老师都是身高155,年龄28,体重100的御姐老师

  • **再次,我给每个班级添加5名松岛

相关源码推荐:

我来说两句
*滑动验证:
所有评论(280)
逆鳞九霄 2018-1-2 10:29:46
楼主威武啊,Code4App有你更给力!
回复
phoiu 2018-1-2 10:30:15
code4app好的代码demo真的很多,谢谢啦~
回复
BlueManlove 2018-1-2 10:30:19
虽不明,但觉厉...
回复
hellokenken 2018-1-2 10:30:50
感谢分享,code4app有你更精彩
回复
littleRed 2018-1-2 10:30:53
code4app好的代码demo真的很多,谢谢啦~
回复
kengsir 2018-1-2 10:30:59
相当不错,感谢无私分享精神!
回复
AlonMessi 2018-1-2 10:31:09
我是来学习的
回复
code4app热心网友 2018-1-2 11:01:45
虽不明,但觉厉!
回复
code4app热心网友 2018-1-2 11:27:34
感谢分享,Code4App有你更精彩:)
回复
提取码:  下载次数:176 状态:已购或VIP 售价:0(原价:15)金钱 下载权限:初级码农 
1563 1 176
联系我们
首页/微信公众账号投稿

帖子代码编辑/版权问题

QQ:435399051,742864542

如何获得代码达人称号?

代码贡献英雄榜
用户名 下载数
通过邮件订阅最新 Code4App 信息
上一条 /4 下一条
联系我们
关闭
合作电话:
13802416937
Email:
435399051@qq.com
商务市场合作/投稿
问题反馈及帮助
联系我们

广告投放| Github|申请友链|手机版|Code4App ( 粤ICP备15117877号-1 )

快速回复 返回顶部 返回列表