ios开发数据库篇—sqlite简单介绍
一、离线缓存
在项目开发中,通常都需要对数据进行离线缓存的处理,如新闻数据的离线缓存等。
说明:离线缓存一般都是把数据保存到项目的沙盒中。有以下几种方式
(1)归档:nscodeing、nskeyedarchiver
(2)偏好设置:nsuserdefaults
(3)plist存储:writetofile
提示:上述三种方法都有一个致命的缺点,那就是都无法存储大批量的数据,有性能的问题。
举例:使用归档
两个问题:
(1)数据的存取都必须是完整的,要求写入的时候要一次性写入,读取的时候要一次性全部读取,这涉及到应用的性能问题。
(2)如果有1000条数据,此时要把第1001条数据存入,那么需要把所有的数据取出来,把这条数据加上去之后,再存入。
说明:以上的三种技术不能处理大批量数据的存储,大批量数据通常使用数据库来进行存储。
二、sqlite简单介绍
1.ios中数据的存储方式
(1)plist(nsarray\nsdictionary)
(2)preference(偏好设置\nsuserdefaults)
(3)nscoding(nskeyedarchiver\nskeyedunarchiver)
(4)sqlite3
(5)core data
说明:
3是版本号,是sqlite的第三个版本。
core data是对sqlite的封装,因为ios中使用的sqlite是纯c语言的。
2.sqlite
(1)什么是sqlite?
答:sqlite是一款轻型的嵌入式数据库,安卓和ios开发使用的都是sqlite数据库
(2)特点(优点)
答:1)它占用资源非常的低,在嵌入式设备中,可能只需要几百k的内存就够了
2)它的处理速度比mysql、postgresql这两款著名的数据库都还快
(3)什么是数据库
答:数据库(database)是按照数据结构来组织、存储和管理数据的仓库
(4)数据库的分类
答:可以分为2大种类
关系型数据库(主流)和对象型数据库(直接把内存中的对象塞入到数据库,对比关系型数据库而言性能不能很好,效率不高)
(5)常用关系型数据库有哪些?
答:pc端:oracle、mysql、sql server、access、db2、sybase
嵌入式\移动客户端:sqlite
(6)数据库是如何存储数据的?
答:数据库的存储结构和excel很像,以表(table)为单位 。表由多个字段(列、属性、column)组成,表里面的每一行数据称为记录
(7)数据库存储数据的步骤?
1)新建一张表(table)
2)添加多个字段(column,列,属性)
3)添加多行记录(row,record,每行存放多个字段对应的值)
三、navicat
navicat是一款著名的数据库管理软件,支持大部分主流数据库(包括sqlite)
1.navicat的安装
(1)下载该软件后,先打开该软件
(2)把文件拖入到应用程序拷贝
(3)破解版,千万不要打开app,先打开sn.app
(4)点击patch,找到应用程序的路径,点击open.
(5)点击generate,生成注册码
(6)点击activate,选择文件,open
(7)退出sn,打开安装文件,完成安装
2.navicat的使用
新建一个sqlite3数据库
创建一个新的数据库
设置数据库保存的位置(新建一个文件夹):
起个名称之后,保存
设置数据库连接的名称
完成之后,双击连接数据库
注意:yangyong是连接名称,不是数据库,利用yangyong这个连接,连接了main数据库。几项依次是表、视图、索引、触发器、查询。
新建一张表,设置字段名
保存,设置表名(建议以t开头以下划线隔开,以示区分,说明这是张表)