数据库:
数据库文件与普通文件区别:
1.普通文件对数据管理(增删改查)效率低
2.数据库对数据管理效率高,使用方便
常用数据库:
1.关系型数据库:
将复杂的数据结构简化为二维表格形式
大型:Oracle、DB2
中型:MySql、SQLServer
小型:Sqlite
2.非关系型数据库
以键值对存储,且结构不固定
//JSON
Redis
MongoDB
嵌入式数据库:
sqlite3:
stu.db
1.开源免费, c语言开发
2.代码量少,1万行左右,总大小10M以内
3.文件型数据库,可以移动
4.数据容量最大2T
数据库的操作(SQL语句的增删改查)
利于学习sqlite3的网站:SQLite 教程 | 菜鸟教程SQLite 教程 SQLite 是一个软件库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite 是在世界上最广泛部署的 SQL 数据库引擎。SQLite 源代码不受版权限制。 本教程将告诉您如何使用 SQLite 编程,并让你迅速上手。 现在开始学习 SQLite! 谁适合阅读本教程? 本教程有助于初学者了解 SQLite 数据库引擎相关的基础知识和先进理念。 阅读本教程前,你需要了解的知识..https://www.runoob.com/sqlite/sqlite-tutorial.html
1.创建数据库:
sqlite3 XXX.db
2.sqlite3的常用命令
.help 查询手册
.tables 查看数据库中的表
.headers on/off 打开/关闭表头
.mode column 设置左对齐
.quit 退出数据库
3.sqlite3支持的SQL(结构化序列语言) 语言
数据类型:
操作方法:
7.时间
datetime()
函数接口:
回调函数类型:
int fun(void* para,int n_column,char** column_value,char** column_name);
参数:
para : sqlite3_exec传递的第四个参数
n_column :查询到数据的列数
column_value:查询结果每个字段的首地址集合
column_name :查询结果每个字段的字段名称首地址集合
注意:
1. 回调函数查询到几行数据就执行几次;
2.回调函数必须要返回0,否则sqlite3_exec调用失败
3.数据库中查出的数据均为字符串
sqlite3_close
int sqlite3_close(sqlite3*);
功能:
关闭数据库句柄,释放空间
.sqlite3_free
void sqlite3_free(void*);
功能:释放保存出错信息的空间