美文网首页与时俱进的IT
UI(十七)数据库->数据持久化

UI(十七)数据库->数据持久化

作者: 社会主义顶梁鹿 | 来源:发表于2018-07-30 17:53 被阅读0次

数据持久化的几种方式:plist、NSUserDefaults、归档、sqlite

sqlite:关系型数据库 以表格的形式存储

在sqlite中类似表格的表头的位置叫做《字段》(字段名不能重复)字段是用来查找数据的关键字(每张表格的关键字不能重名)

可以通过这张表的任意一个字段查找到对应的数据(横着)

在字段的下面是每条数据(存储的内容)

sqlite中 可以有多个表 表与表之间是通过主键和外键关联起来的

操作数据库:

1、sql语句(structured query language)结构化查询语言

sql语句:结构化查询语言组成的一条语句

2、操作数据库的函数(通过C语言来操作的)

#pragma mark-----------

1、sql语句

常用关键字:select、insert、update、delete、from、create、where、desc、order、by、group、table、drop、alter、view、index等等

类型:

integer: 整型值

real: 浮点值

text: 文本字符串

blob: 二进制数据

功能性:建表 删表

建表:create(创建) table(表)

建表公式:create table 表名 (字段名 类型, 字段名 类型);

如果不存在这个表就去创建:create table if not exists 表名 (字段名 类型, 字段名 类型);

例子:create table if not exists user (name text, age integer)

让ID自动增长 把某个字段设置成主键并让它自动增长(primary key autoincrement)

例子:create table if not exists user (idinteger primary key autoincrement, name text, age integer)

删表:drop(删除) table

删表公式:drop table 表名

如果表存在就去删除:drop table if exists user

操作:增 删 改 查

增:insert into values

公式:insert into 表名 (字段名) values(值)

删:delete from 

公式:delete from 表名 where 字段 = '值';

改:update from where set

公式:update 表名 set 字段名 = '新值' where 字段名 = '值';

查:select from where

公式:

1、查询某条数据:select 字段(整条数据所有包含的字段) from 表名 where 字段 like ?;

2、查询整个表:select * from 表名

步骤:

1、核对sql语句的合法性

2、绑定要查询的数据

3、开始查询

#pragma mark-----------

ios操作数据的函数步骤

1、导入 sqlite3这个框架*****

2、打开、关闭数据库

sqlite3_open(char *类型的文件路径, 数据库对象的内存地址)

sqlite3_close(数据库对象)

3、(如果没有建表 需要建表)①增 删 改 对应的操作

对表格进行操作:sqlite3_exec(数据库对象, [@"建表(增 删 改)的语句" UTF8String]char *类型的sql语句(要干什么), NULL, NULL, char *类型的字符串(如果有错误会返回一个错误信息))

②查 对应的操作

1、核对sql语句的合法性

2、绑定要查询的数据

3、开始查询、分离查询结果

使用完数据库 及时关闭数据库

1、核对sql语句的合法性

sqlite3_stmt *stmt;结果集 查询的数据放入里面

sqlite3_prepare_v2(数据库的对象, sql语句, 查询语句的长度(-1), 结果集的内存地址, NULL)

2、绑定要查询的数据

sqlite3_bind_text(数据集的对象, 绑定的第几个问号, 要查询的内容(char*), 要查询内容的长度, NULL)

3、开始查询、分离查询结果

while (sqlite3_step(stmt) == SQLITE_ROW) {

sqlite3_column_查询的类型(结果集的对象, 列数)

     }

相关文章

  • UI(十七)数据库->数据持久化

    数据持久化的几种方式:plist、NSUserDefaults、归档、sqlite sqlite:关系型数据库 以...

  • MySQL数据库入门

    MySQL 关系型数据库入门 1. 数据持久化 数据库是数据持久化的一种工具, 如果想要做到数据持久化必须将数据通...

  • MySQL:SQL结构化查询语言

    一.数据库 将数据持久化的容器 1.数据持久化:将数据从内存转移到可持久化介质上(硬盘) 2.数据库类别: a.关...

  • 面试相关

    数据持久化 什么是持久化狭义的理解: “持久化”仅仅指把域对象永久保存到数据库中;广义的理解,“持久化”包括和数据...

  • GeekBand iOS开发高级进阶学习笔记(第四周)

    简易数据存储 数据持久化分为本体持久化和云端持久化本体持久化可以存在本地文件或数据库。云端可以存在iCloud,存...

  • Redis学习笔记(九) AOF持久化

    除了RDB持久化功能之外,Redis还提供了AOF持久化功能。与RDB持久化通过保存数据库中的键值对来记录数据库状...

  • 数据库

    数据库 - 数据的仓库(集散地) - database - 实现数据持久化和数据管理持久化 - 将数据从内...

  • Redis RDB持久化和AOF持久化

    RDB持久化 Redis是内存数据库,数据库状态都在内存里边,需要RDB持久化功能将内存中的数据库状态保存到磁盘里...

  • Android数据持久化之数据库的使用

    android开发中数据持久化 轻量级数据持久化一般使用sp,大量数据的持久化就必须考虑使用本地数据库了 Andr...

  • DAO模式

    一.DAO: 1.数据存取对象 2.位于业务逻辑(实体类)和持久化(数据库)之间 3.实现对持久化数据(数据库)的...

网友评论

    本文标题:UI(十七)数据库->数据持久化

    本文链接:https://www.haomeiwen.com/subject/khzfvftx.html