欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

嵌入式系统数据库选型以及sqlite数据库使用

程序员文章站 2022-05-10 18:11:49
...

学习网络安全技术与应用杂志中一篇文章《基于arm-linux 的sqlite 嵌入式数据库技术》后的笔记。 1.嵌入式系统数据库选型原则: a。适当的体积。 b。较强的功能。需要满足多种应用。 c。开源的代码。降低开发成本,完善产品维护,为产品稳定运行被以彻底解决

学习网络安全技术与应用杂志中一篇文章《基于arm-linux 的sqlite 嵌入式数据库技术》后的笔记。


1.嵌入式系统数据库选型原则:

a。适当的体积。

b。较强的功能。需要满足多种应用。

c。开源的代码。降低开发成本,完善产品维护,为产品稳定运行被以彻底解决手段。


2.sqlite

支持大多数sql92:多表,索引,视图,事务,触发,驱动,用户接口。

有效高速可升级。

体系结构:SQLite的分析生成器是高度优化的,可以快速产生高效率代码,抵抗内存泄漏。基于kunth,底部为优化过度b树。可运行在页面缓冲之上,该页面缓存是能调整的,利用最大化降低磁盘查找。再往下为高速缓存,用于os抽象层上方。

开发技术:TCL接口。

应用c语言三个步骤实现api。第一提供访问模式/文件名来对sqlite_open(链接数据库进行调用。第二,执行callback,获取来自数据库结果。第三步,调用sqlite_exec()可执行某个sql查询,且获得一个callback指针。

硬件平台移植:获取源代码,根据差异化平台进行交叉编译,完成移植。

编译步骤:

1.解压源码,生成sqlite目录。

2.echo $path查看path中是否已经包含编译工具:armlinuxgcc

3.修改sqlite/src/sqliteInt.h保证btree变量大小。

4.选择configure完成配置。

5.修改makefile。BCC=armlinuxgccg02修改为gccg02 另外,libsqlite.la修改为.libs/libsqlite.a(静态编译)

6.编译。