iOS开发中本地持久化-SQLite

数据库简介:

数据库按照数据结构来组织,存储和管理数据的仓库,数据库可分为两大类关系型(主流)和对象型

数据库存储数据的步骤

1.新建一个数据库文件

2.新建一张表

3.添加多个字段(可以当作excel的列)

4.添加多行记录(可以当做excel的行)

SQLite简介:

SQLite是一款轻型的嵌入式数据库,它占用资源非常的低,在嵌入式设备中,可能只需要几百k的内存就够了,但是它的处理速度比Mysql  PostgreSql这两款著名的数据库都还快

SQLite将数据划分为以下几种存储类型:

integer:整型值

real:浮点值

text:文本字符串

blob:二进制数据(比如文件)

实际上是无类型的,类型仅仅是为了增加代码的阅读性

一   SQLite的语句可分为三类DDL  DML  DQL

1.1数据定义语句DDL

包括create 和drop等操作

《iOS开发中本地持久化-SQLite》
创建一张表

《iOS开发中本地持久化-SQLite》
删除一张表

1.2数据操作语句DML

《iOS开发中本地持久化-SQLite》
插入一行数据

《iOS开发中本地持久化-SQLite》
数据
更新

《iOS开发中本地持久化-SQLite》
删除数据

1.3数据查询语句DQL

《iOS开发中本地持久化-SQLite》
数据查询语句(*代表通配符)

《iOS开发中本地持久化-SQLite》
排序

二  在Xcode中使用sqlite数据库

2.1导入库文件

《iOS开发中本地持久化-SQLite》

   sqlite是一套c语言的api  想要在Swift中使用Objective-C 或C的类和方法的话,需要创建一个.h 头文件,把你想在 Swift 中使用的 Objective-C 的头文件都包含进来    创建桥接文件需要对文件路径进行配置    不然编译的时候会报错

《iOS开发中本地持久化-SQLite》

《iOS开发中本地持久化-SQLite》

《iOS开发中本地持久化-SQLite》

做完这三步就可以开始使用sqlite进行数据库操作了

2.2   打开数据库 及创建一张表

《iOS开发中本地持久化-SQLite》
打开数据库

《iOS开发中本地持久化-SQLite》
创建一张表

2.3数据库操作(DML)及查询语句

DML语句执行方通常只有一个  我们把它抽取出来  留一个参数传入一条sqlite语句    以下三个截图会用到这个公共方法

《iOS开发中本地持久化-SQLite》 执行sqlite的公共方法

插入一条数据

《iOS开发中本地持久化-SQLite》 插入一条数据

更新数据

《iOS开发中本地持久化-SQLite》
更新数据

删除数据

《iOS开发中本地持久化-SQLite》
删除一条数据

查询语句   执行方法与以上不同   (比较复杂)

事务的概念

作用:事务可以保证多条SQL语句要么一起成功,要么一起失败 可以提升程序性能其实当我们每次调用sqlite3的sqlite3_exec方法时,系统内部都会默认帮我们开启一个事务,但是正是因为这样,所以导致了程序有很严重的性能问题如果在执行SQL语句之前我们自己开启了事务,那么系统就不会再自动的帮我们开启和提交事务了

原理:开启事务就对数据库做一个备份,提交事务就删除备份,使用修改之后的数据,回滚事务就会删除备份,使用修改之前的数据

《iOS开发中本地持久化-SQLite》
事务回滚

手动提交事务  性能优化

《iOS开发中本地持久化-SQLite》
数据量大的时候需手动提交事务

    原文作者:蚂蚁牙齿不黑
    原文地址: https://www.jianshu.com/p/cc1072745c39
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞