数据存储之数据库

解决类似微博缓存内容不要再次加载,而浪费流量

储存数据的方式

  • plist 只能存储系统自带的一些类型,自定义对象无法存入

  • preference(偏好设置\NSUserDefaults)也同样无法存储自定义的对象

  • NSCoding归档可以存储自定义对象
    (NSKeyedArchiver\NSKeyedUnarchiver)无论是读入还是读出,都是一次性的读入读出,不够灵活

  • SQLite3 比较灵活且轻型且跨平台

  • Core Data 是苹果对于SQLite3的面向对象的包装

SQLite

  • 什么是SQLite

  • SQLite是一种轻型的嵌入式数据库

  • 占用的资源低,只需要几百k的内存就够了

  • 比Mysql处理速度更快

  • 什么是数据库

  • 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。

  • 数据库可以分为两大种类(关系型数据库,对象型数据库)

  • 常用关系型数据库

  • PC端:Oracle(银行多用)、Mysql(免费)、SQL Server、Access、DB2、Sybase

  • 嵌入式\移动客户端:SQLite

如何存储数据

  • 数据库是如何存储数据

  • 数据库的存储结构和excel很像,以表(table)为单位

  • 数据库存储数据的步骤

  • 创建一个数据库文件

  • 新建一个表(table)

  • 添加多个字段(column,列,属性)

  • 添加多行记录(row,每行存放多个字段记录的值)

主键约束(Primary Key 简称PK)
  • 良好的数据库编程规范应该要保证每条记录的唯一性,为此,增加了主键约束,也就是说每张表都必须又一个主键,用来标识记录的唯一性。相当于人的身份证。不要修改主键,选择自增长。

主键的设计原则

  • 主键应当是对用户没有什么意义的
  • 永远也不要更新主键
  • 主键不应包含动态变化的数据
  • 主键应当由计算机自动生成

SQL语句

  • SQL语句的特点

  • 不区分大小写

  • 每条语句都必须以分号;结尾

  • 数据库中不可以使用关键字来命名

  • SQL语句的种类

  • 数据定义语句(DDL:Data Definition Language)包括在数据库中创建新表或删除表(create table 或drop table)

  • 数据操作语句(DML:Data Manipulation Language)包括insert、update、delete等操作

  • 数据查询语句(DQL:Data Query Language)可以用于查询获得表中的数据,关键字select是用的最多的操作

在X-code中使用SQLite

  • 先把SQLite3框架引入X-code中
  • 数据库其实就是一个文件

在删除框架时,是删除引用第二项,而不是丢到垃圾桶

你可能感兴趣的:(数据存储之数据库)