【vc++精品源码栏目提醒】:文章导读:在新的一年中,各位网友都进入紧张的学习或是工作阶段。
网学会员整理了vc++精品源码-SQLite嵌入式数据库的应用 - 软件工程的相关内容供大家参考,祝大家在新的一年里工作和学习顺利!
DATABASE AND INFORMATION MANAGEMENT 数据库与信息管理 SQLite嵌入式数据库的应用 杜国祥,石俊杰 (63981部队。
武汉43031 1) 摘要: 简要介绍了SQLite数据库的体系结构、优缺点、适用范围,讲解了在VC++6.0 SP5开发环境中使用 SQLite的常用方法,给出了基于SQLite数据库来分析处理单日基金净值数据的应用实例。
关键词:SQLite;Visual C++;SQLite3_stmt Application to the Embedded Database--SQLite DO GI枷i柚g,SHI蚴 (63981 PLA Troops,Wuhan 430311) Abstract:First of all,This paper introduces the structure、advantages,and limitations of the SQLite in brief.As well as which situations should We apply the SQLite.Then.it introduces how to apply the SQLite in Visual C++6.0 SP5 development envi— ronment.At last,it sives an example which applys the SQLite to analyze some day fund datas. Key words:SQLite;Visual C++;SQLite3_stmt1 SOLite 法树,然后把语法树传给代码生成器(code generator)进行处 SQLite是D.Richard Hipp于2000年采用c语言编写的一 理。
而代码生成器根据它生成一种针对SQLite的汇编代码,个轻量级、跨平台的关系型数据库,支持大部分SQL92标准 最后由虚拟机执行。
(比如视图、事务、触发器、blob数据类型等),支持弱类型 (3)虚拟机数据存储,开源
免费,现已被嵌入最新的PHP5中。
在SQLite 架构中最核心的部分是虚拟机,或者叫做虚拟数据库引的官方网站上,也可以看到SQLite逐渐被许多大公司采用, 擎VDBE,它和Java虚拟机相似,解释执行字节代码。
VDBE比如Adobe、Apple、Firefox、C.oosle、Sun、symbaill等。
的字节代码由128个操作码(opcodes)构成,它们主要集中1.1体系结构 在数据库操作。
它的每一条指令都用来完成特定的数据库操 SQLite采用模块化程序
设计,主要由3个子系统、8个独 作(此如打开一个表的游标)或者为这些操作栈空间的准备立的模块构成,其体系结构如图l所示。
(比如压人参数)。
(4)后端 后端由B一树,页缓存和操作系统接口(即
系统调用)构 成。
B-tree的主要功能就是索引,它维护着各个页面之间的复 杂的关系,便于快速找到所需数据;pager的主要作用就是通 过os接口在B—tme和Disk之间传递页面。
1.2优点 轻量级:SQUte为进程内数据库引擎,嵌入运行于程序 的进程空间,速度快。
SQLite全部的功能都包含在一个不到 500KB的动态链接库文件中。
绿色:SQLite的核心引擎不依赖第三方的软件,编译链 接进程序即可,无须“安装”。
图1 SQLite体系结构图 文件型数据库:SQLite数据库中所有的信息都包含在一 (1)接口 个文件内,类似于Access,数据文件拷贝、备份方便。
由两部分组成:核心API(core API)和扩展API(exten— 跨平台同‘移植性:SQLite除了支持主流常见的操作系统sion API),核心API的函数实现基本的数据库操作,扩展API (Windows、Mac OS X、Lin畦),还支持很多嵌入式系统(比通过创建自定义的SQL函数去扩展SQLite。
如Android、Windows Mobile、Symbin、Palm、Vxworks等)o (2)编译器 提供多种编程语言接口:SQLite支持C/C++、Java、 在编译器中,分词器和分析器对SQL语句进行语法检查, Python、PHP、DOT.NET等,提供了多种编程接口,适合混合然后把它转化为底层能更方便处理的分层的数据结构…语 语言编程,允许为SQL命令集动态添加自定义函数(简单函收稿日期:2010--05—16 数及聚集函数),而无需重新编译S