IOS学习之数据库(1)--SQLite简单介绍

转载自 http://www.cnblogs.com/wendingding/p/3868893.html


一、离线缓存

在项目开发中,通常都需要对数据进行离线缓存的处理,如新闻数据的离线缓存等。

说明:离线缓存一般都是把数据保存到项目的沙盒中。有以下几种方式

(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开头以下划线隔开,以示区分,说明这是张表)


你可能感兴趣的:(ios,数据库)