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:47 阅读更多 →
五分钟解锁九大网盘真实下载链接:LinkSwift 完全使用指南

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

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

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

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

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

2026/7/24 22:06:47 阅读更多 →

最新新闻

EdgeRemover:专业级Windows Edge浏览器管理解决方案的深度技术解析

EdgeRemover:专业级Windows Edge浏览器管理解决方案的深度技术解析

EdgeRemover:专业级Windows Edge浏览器管理解决方案的深度技术解析 【免费下载链接】EdgeRemover A PowerShell script that correctly uninstalls or reinstalls Microsoft Edge on Windows 10 & 11. 项目地址: https://gitcode.com/gh_mirrors/ed/EdgeRemov…

2026/7/24 22:11:50 阅读更多 →
Lifecycle 使用

Lifecycle 使用

为什么要有Lifecycle? Lifecycle 诞生的背景有三个:生命周期不统一 Activity 和 Fragment 的生命周期存在差异,Fragment 更复杂,且不同系统版本下组合使用时行为不一致,容易产生隐蔽 bug,开发和维护成本高。…

2026/7/24 22:11:50 阅读更多 →
AI-HF Patch终极指南:3分钟搞定AI少女游戏增强补丁

AI-HF Patch终极指南:3分钟搞定AI少女游戏增强补丁

AI-HF Patch终极指南:3分钟搞定AI少女游戏增强补丁 【免费下载链接】AI-HF_Patch Automatically translate, uncensor and update AI-Shoujo! 项目地址: https://gitcode.com/gh_mirrors/ai/AI-HF_Patch AI-HF Patch是一款专为AI-Shoujo(AI少女&a…

2026/7/24 22:11:50 阅读更多 →
QKeyMapper终极指南:5分钟掌握Windows游戏手柄键盘鼠标全能映射技巧

QKeyMapper终极指南:5分钟掌握Windows游戏手柄键盘鼠标全能映射技巧

QKeyMapper终极指南:5分钟掌握Windows游戏手柄键盘鼠标全能映射技巧 【免费下载链接】QKeyMapper [按键映射工具] QKeyMapper,Qt开发Win10&Win11可用,不修改注册表、不需重新启动系统,可立即生效和停止。支持游戏手柄映射到键…

2026/7/24 22:11:50 阅读更多 →
可白嫖源码---课程设计--毕业设计--springboot校园流浪动物健康档案系统[编号:project17069](案例分析)

可白嫖源码---课程设计--毕业设计--springboot校园流浪动物健康档案系统[编号:project17069](案例分析)

本文仅展示核心实现逻辑与部分代码片段,完整项目源码、配套文档、数据库脚本内容较多,篇幅有限无法全部放出。 有需要完整资源的同学,可以在评论区留言【资料或领源码】,我会一 一回复站内私信,发送完整文件 目 录 摘…

2026/7/24 22:11:50 阅读更多 →
【湿法-萃取工艺20】---MSP废水处-四大核心技术深度细化

【湿法-萃取工艺20】---MSP废水处-四大核心技术深度细化

镁系废水(硫酸镁)资源化系统 —— 四大核心技术深度细化 以下对树脂选型对比表、MVR能耗计算、解析液萃取工艺、硫酸镁结晶工艺参数进行系统性、工程级别的细化。 一、树脂选型对比表(针对镁系废水Ni/Co/Mg分离) 1.1 选型核心原…

2026/7/24 22:10:49 阅读更多 →

日新闻

用Highcharts 创建可拖拽三维散点立方体3D图表

用Highcharts 创建可拖拽三维散点立方体3D图表

该案例基于Highcharts scatter3d 三维散点图实现空间立方体散点可视化,核心特色:三维 X/Y/Z 三轴空间,所有散点分布在 0~10 立方体空间内;散点使用径向渐变实现立体 3D 圆球质感;支持鼠标 / 触屏拖拽画布,…

2026/7/24 0:00:29 阅读更多 →
AppCertDlls:进程创建路径上的 DLL 入口

AppCertDlls:进程创建路径上的 DLL 入口

AppCertDlls:进程创建路径上的 DLL 入口 AppCertDlls 位于 HKLM\System\CurrentControlSet\Control\Session Manager\AppCertDlls。本文的程序功能是只读列出这个键在 64 位和 32 位注册表视图中的全部值,并显示每条值的来源、名称、类型和可安全显示的数…

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

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

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

2026/7/24 0:00:29 阅读更多 →

周新闻

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

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

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

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

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

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

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

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

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

2026/7/24 18:52:18 阅读更多 →

月新闻