学习嵌入式的第三十四天-数据结构-(2025.7.29)数据库
数据库基础概念
数据库是用于存储和管理海量数据的应用程序,提供数据增删改查及统计功能(如最大值、最小值、平均数等)。通过SQL语句操作数据,以表格形式管理存储。
数据库分类
- 关系型数据库
Oracle(大型)、MySQL/MSSQL(中型)、SQLite/DBIl(小型) - 非关系型数据库
MongoDB
SQL语言分类
- DDL (Data Definition Language)
建表语句,如CREATE TABLE
- DML (Data Modification Language)
数据操作语句,如INSERT
、UPDATE
、DELETE
- DQL (Data Query Language)
查询语句,如SELECT
嵌入式数据库 SQLite3
特点
- 开源,C语言开发
- 代码量约1万行,体积小于10MB
- 绿色软件,无需安装
- 文件型数据库,可移动
- 最大支持2TB数据容量
- 需定期维护
安装与验证
sudo apt-get install sqlite3 libsqlite3-dev
gcc test.c -lsqlite3 -lpthread
sqlite3 --version # 验证安装
SQLite3 基本操作
启动与退出
sqlite3 test.db # 启动并打开数据库
.quit # 退出
常用指令
.database # 查看关联文件
.headers on # 显示表头
.schema # 显示建表语句
.table # 列出所有表
数据操作示例
-- 创建表
CREATE TABLE 表名(字段1 类型, 字段2 类型);
-- 插入数据
INSERT INTO 表名 VALUES(值1, 值2);
-- 查询数据
SELECT 列名 FROM 表名 WHERE 条件;
-- 修改数据
UPDATE 表名 SET 列名=值 WHERE 条件;
-- 删除数据
DELETE FROM 表名 WHERE 条件;
条件语法
- 数字类型:
WHERE id > 20
- 字符串模糊匹配:
WHERE name LIKE 'zhang%'
(%
匹配任意字符)WHERE name LIKE 'zhang_'
(_
匹配单个字符)
C 语言编程接口
参考 SQLite 官方文档:
sqlite.org/capi3ref
核心函数
sqlite3_open(); // 打开数据库
sqlite3_exec(); // 执行SQL语句
sqlite3_close(); // 关闭数据库