Linux 嵌入式平台数据库
1.数据库文件与普通文件区别:1.普通文件对数据管理(增删改查)效率低2.数据库对数据管理效率高,使用方便2.常用数据库1.关系型数据库 将复杂的数据结构简化为二维表格形式 大型:Oracle、DB2 中型:MySql、SQLServer 小型:Sqlite2.非关系型数据库 以键值对存储且结构不固定 //JSON Redis MongoDB3.嵌入式数据库sqlite3 stu.db 1.开源免费 c语言开发2.代码量少1万行左右总大小10M以内3.文件型数据库可以移动 4.数据容量最大2T4.spilte3的安装1.在线安装 sudo apt-get install sqlite3 sudo apt-get install libsqlite3-dev2.源码安装1.sqlite-autoconf-3080403源代码.tar.gz拷贝到Ubuntu系统Desktop目录中2.tar -zxvf sqlite-autoconf-3080403源代码.tar.gz3.cd sqlite-autoconf-30804034../configure // 生成makefile5.make // 编译源码 6.sudo make install // 安装1.sqlite3 操作指令 1)命令 . 2SQL语句 增 删 改 查2.sqlite3 API接口应用程序接口增删 改 查https://www.runoob.com/sqlite/sqlite-tutorial.html1.sqlite命令1..help 查看sqlite3支持的相关命令 2..quit 退出sqlite3数据库 3..tables 查看数据库中的所有表 4..schema tablename 查看tablename创建时的SQL语句表的结构 5..headers on/off 开启关闭列名称 6..mode column 以左对齐列宽显示数据 7..width 第一列宽度 第二列宽度 第三列宽度 ... 设置column模式显示下的每列的宽度2.SQL语言1.create table​ 创建表​ create table 表名称(列名称1 数据类型,列名称2 数据类型,列名称3 数据类型,....)sqlite3数据类型 INTEGER int REALdouble float TEXT: char 字符串 NULL值是一个 NULL值。 表不存在则创建存在不创建 create table if not exists 表名称(列名称1 数据类型,列名称2 数据类型,列名称3 数据类型,....) 2.insert into插入表 INSERT INTO 表名称 VALUES(值1, 值2,....)4.select 查表 SELECT * FROM 表名称 SELECT 列名称 FROM 表名称 SELECT 列名称1,列名称2,列名称3 FROM 表名称 5.where 1条件匹配 SELECT 列名称 FROM 表名称 WHERE 列 运算符 值 运算符 ! and or 2模糊查询 SELECT * FROM 表名称 WHERE 列名 like %冬梅 SELECT * FROM 表名称 WHERE 列名 like 马% SELECT * FROM 表名称 WHERE 列名 like 马__ 百分号%代表零个、一个或多个数字或字符。 下划线_代表一个单一的数字或字符。这些符号可以被组合使用。 3顺序显示 selete * form 表名称 order by 列名 ASC; //升序查询 selete * form 表名称 order by 列名 DESC; //降序查询 select * from class1 order by score ASC; 升序查询 select * from class1 order by score DESC;降序查询6.delete 删除表中信息 DELETE FROM 表名称 WHERE 列名称 值7.update 改表中信息 UPDATE 表名称 SET 列名称 新值 WHERE 列名称 某值 8.datetime datetime(now, 8 hours); select datetime(now, 8 hours); 查询当前东八区时间 insert into class3 values(1, zhangsan, 99, datetime(now, 8 hours)); insert into class3 values(2, lisi, 100, datetime(now, 8 hours)); insert into class3 values(3, wanger, 98, datetime(now, 8 hours)); 10. 设置主键值自动增长列 create table 表名称(id INTEGER PRIMARY KEY AUTOINCREMENT, 类名称 数据类型, ...); 11. drop table 表名称 删除一张表数据库维护命令安装可视化工具 sudo apt-get install sqlitebrowser sqlitebrowser xxx.db Navicat Sqlite3 Windows下图形操作接口3.sqlite数据库编程c/c接口:1.编程框架​ 打开数据库---》读写数据库增删改查---》关闭数据库​sqlite3.h -lsqlite3 2.sqlite3函数接口: 1.sqlite3_open int sqlite3_open( const char *filename, /* Database filename (UTF-8) */ sqlite3 **ppDb /* OUT: SQLite db handle */ ); 功能 打开一个数据库文件获得操作数据库文件的句柄 如果数据库存在则打开不存在则创建 参数: filename:数据库文件路径 ppDb:存放句柄指针空间的首地址 返回值: 成功返回SQLITE_OK 2.sqlite3_errmsg const char *sqlite3_errmsg(sqlite3*); 功能: 获得出错原因 3.sqlite3_close int sqlite3_close(sqlite3*); 功能 关闭数据库句柄,释放空间 4.sqlite3_exec int sqlite3_exec( sqlite3* pDb, /* An open database */ const char *sql, /* SQL to be evaluated */ int (*callback)(void*,int,char**,char**), /* Callback function */ void *arg, /* 1st argument to callback */ char **errmsg /* Error msg written here */ ); 功能: 在数据库中执行SQL语句 参数: sqlite3*:数据库句柄 sql :SQL语句字符串首地址 callback:回调函数(只有select时使用) void * :回调函数的传参(只有select时使用) char **errmsg:出错信息存放空间首地址 返回值: 成功返回SQLITE_OK 0 回调函数类型 int fun(void* para,int n_column,char** column_value,char** column_name); 参数 para sqlite3_exec传递的第四个参数 n_column 查询到数据的列数 column_value查询结果每个字段的首地址集合 column_name 查询结果每个字段的字段名称首地址集合 注意 1. 回调函数查询到几行数据就执行几次 2.回调函数必须要返回值否则sqlite3_exec调用失败 3.数据库中查出的数据均为字符串 5.sqlite3_free void sqlite3_free(void*); 功能:释放保存出错信息的空间

相关新闻

企业知识库 RAG 安全:当内部文档成为越狱的后门

企业知识库 RAG 安全:当内部文档成为越狱的后门

企业知识库 RAG 安全:当内部文档成为越狱的后门 一、当文档自己说话:RAG 系统的隐性越狱面 检索增强生成(RAG)已经成为企业把内部知识喂给大模型的主流方案。它让模型在回答前先去知识库里找相关片段,再把片段拼进上下…

2026/7/24 22:06:53阅读更多 →
五分钟解锁九大网盘真实下载链接:LinkSwift 完全使用指南

五分钟解锁九大网盘真实下载链接:LinkSwift 完全使用指南

五分钟解锁九大网盘真实下载链接:LinkSwift 完全使用指南 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / 中国移动云盘 / 天…

2026/7/24 22:06:53阅读更多 →
5分钟掌握本地图片搜索神器:告别海量图片管理烦恼的终极指南

5分钟掌握本地图片搜索神器:告别海量图片管理烦恼的终极指南

5分钟掌握本地图片搜索神器:告别海量图片管理烦恼的终极指南 【免费下载链接】ImageSearch 基于.NET10的本地硬盘千万级图库以图搜图案例Demo和图片exif信息移除小工具分享 项目地址: https://gitcode.com/gh_mirrors/im/ImageSearch 还在为在数万张照片中寻…

2026/7/24 22:06:53阅读更多 →
Hermes Agent Skills:让它把成功经验变成可复用工作流的正确姿势

Hermes Agent Skills:让它把成功经验变成可复用工作流的正确姿势

Hermes Agent Skills:让它把成功经验变成可复用工作流的正确姿势 [!NOTE] 很多初学者把智能体当成“更会聊天的模型”,结果一上手就把文件、网络和高权限命令交出去。本篇围绕 Skills系统 建立一套可复现的实践路径:先明确任务边界,再确认工具与权限,最后用日志和结果验证…

2026/7/24 23:33:10阅读更多 →
异环1.2版本国际服卡池流水分析:真红角色市场表现解读

异环1.2版本国际服卡池流水分析:真红角色市场表现解读

异环1.2版本国际服卡池流水深度分析:真红角色市场表现全解读近期《异环》1.2版本"异环&真红"卡池在国际服的表现引起了广泛关注,作为一款备受期待的二次元手游,其在不同地区的市场反响差异显著。本文将深入分析该卡池在…

2026/7/24 23:33:10阅读更多 →
AI写作工具横评:提升毕业论文效率的5大平台

AI写作工具横评:提升毕业论文效率的5大平台

1. 毕业论文写作痛点与AI工具崛起写毕业论文是每个大学生必经的煎熬过程。从选题开题到文献综述,从数据收集到论文撰写,动辄数月的写作周期让无数学生抓狂。我指导过上百名学生的毕业论文,发现他们普遍面临三大难题:文献阅读效率低…

2026/7/24 23:33:10阅读更多 →
UE5体素引擎实战:从原理到性能优化的完整开发指南

UE5体素引擎实战:从原理到性能优化的完整开发指南

1. 项目概述:为什么我们需要一个体素引擎?在虚幻引擎5(UE5)的世界里,我们习惯了用多边形(Polygon)来构建一切。从一块石头到一座城市,都是由无数个三角面片组成的。这很强大&#xf…

2026/7/24 23:33:10阅读更多 →
深度解析Detect-It-Easy:3大逆向工程策略与安全分析实战指南

深度解析Detect-It-Easy:3大逆向工程策略与安全分析实战指南

深度解析Detect-It-Easy:3大逆向工程策略与安全分析实战指南 【免费下载链接】Detect-It-Easy Program for determining types of files for Windows, Linux and MacOS. 项目地址: https://gitcode.com/gh_mirrors/de/Detect-It-Easy Detect-It-Easy&#xf…

2026/7/24 23:33:10阅读更多 →
FastAPI做项目的后端准备

FastAPI做项目的后端准备

FastAPI做项目的后端准备 文章目录FastAPI做项目的后端准备前言一、理解框架之间的关系?二、Main里面的配置定义 lifespan 生命周期函数1. 引入必要的库代码说明:2. 多环境配置依赖相关文件一览三个环境对照表配置实现步骤1. 创建配置文件2. 创建环境文件…

2026/7/24 23:31:09阅读更多 →
Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/24 0:58:53阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/24 0:58:53阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/24 0:58:53阅读更多 →
我的编程之路:第一篇博客

我的编程之路:第一篇博客

大家好,我是一名编程初学者,同时这也是我编程学习之路上的第一篇博客。在这里,我想要向大家介绍我的一些想法和规划。a.自我介绍我是一个刚刚接触编程的新手,目前在学习c语言,我对编程世界充满了强烈的好奇。当然&…

2026/7/24 0:00:06阅读更多 →
【LeetCode 54】螺旋矩阵

【LeetCode 54】螺旋矩阵

问题描述: 解法: 1、模拟(参考自【LeetCode 54】螺旋矩阵-CSDN博客) int *spiralOrder(int **matrix, int matrixSize, int *matrixColSize, int *returnSize) {static const int dirs[4][2] {{0, 1}, {1, 0}, {0, -1}, {-1, …

2026/7/24 0:00:06阅读更多 →
2026 WAIC:模型隐身、智能体疯野,厂商竞赛聚焦办公场景与商业闭环

2026 WAIC:模型隐身、智能体疯野,厂商竞赛聚焦办公场景与商业闭环

知春路不相信模型领先今年WAIC大会,昔日AI六小龙来了五家,分别是Kimi、阶跃星辰、Minimax、百川智能、零一万物。连放弃基模的百川和零一万物都来了,唯一缺席的竟是近几个月来风光无限的智谱。(DeepSeek一直不参加)WAI…

2026/7/24 0:00:06阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/24 23:01:03阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/24 19:00:40阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/24 19:00:40阅读更多 →