一种嵌入式设备数据库封装的框架及实现方法技术

技术编号:11900926 阅读:157 留言:0更新日期:2015-08-19 12:57
本发明专利技术涉及一种数据库封装的框架及其实现方法,通过DB-API层对数据库操作进行统一封装,提供实现数据库操作的抽象接口;通过DB-COM-API层,结合各数据表的定义,对所述DB-API层进行再次封装,提供能实现数据表操作的通用接口;通过DBi-API层,针对各个数据表的操作分别实现封装,提供通过调用所述DB-COM-API层的通用接口来对相应数据表进行操作的具体接口;通过数据表层,分别对各个数据表进行定义。本发明专利技术提高数据操作的一致性,实现对多种通用数据库的支持,加快各种大小嵌入式系统平台中数据库相关模块的实现。

【技术实现步骤摘要】

本专利技术涉及嵌入式设备数据库领域,特别涉及一种嵌入式设备数据库封装的框架 及实现方法。
技术介绍
嵌入式设备中,不可避免的要使用到针对大量数据操作的软件。在传统的嵌入式 设备中,一般直接使用数据结构,比如数组或者链表等方式来实现数据的操作。对于有充足 内存设备的场合,也会使用一些专用的嵌入式数据库,比如SQLite等。 然而上述两种现有的实现方法,具有以下的问题: 对于不用专用嵌入式数据库的实现方法,优点是简单,但缺点是无论添加什么样 的数据表,开发人员都需要自己管理内存和各种实现方法,开发周期长;而且不同的开发人 员有各种不同的实现方式,也不易于移植。 对于直接采用专用数据库的方法,由于涉及对SQL(结构化查询语言)的操作,一 般的开发人员需要花时间了解;更麻烦的是,嵌入式系统一般用C语言实现,直接用SQL进 行操作也不太方便。直接对数据库进行操作,还将花更多精力去维护数据库。
技术实现思路
本专利技术的目的是通过一种数据库封装的框架及实现方法,提高数据操作的一致 性,实现对多种通用数据库的支持,加快各种大小嵌入式系统平台中数据库相关模块的实 现。 为了达到上述目的,本专利技术的一个技术方案是提供一种数据库封装的框架,其包 含: 数据库层,包含若干数据库; DB-API层,对数据库操作进行统一封装,提供实现数据库操作的抽象接口; DB-COM-API层,结合各数据表的定义,对所述DB-API层进行再次封装,提供能实 现数据表操作的通用接口; DBi-API层,针对各个数据表的操作分别实现封装,提供通过调用所述 DB-COM-API层的通用接口来对相应数据表进行操作的具体接口; 数据表层,分别对各个数据表进行定义。 优选地,所述数据库封装的框架应用于嵌入式系统。 本专利技术的另一个技术方案是提供一种数据库封装的实现方法,其包含: 实现数据表层,对各个数据表分别进行定义; 实现DBi-API层,提供分别实现各个数据表的操作的具体接口; 实现DB-COM-API层,结合各数据表的定义,提供能实现数据表操作的通用接口; 通过调用所述DB-COM-API层的通用接口,对各个数据表中的一些数据表进行操 作;通过调用所述DBi-API层的具体接口及所述DB-COM-API层的通用接口,对各个数据表 中的另一些数据表进行操作。 优选地,所述实现方法进一步包含: 实现DB-API层,针对数据库层的若干数据库,实现对数据库操作的统一封装,提 供实现数据库操作的抽象接口; 所述DB-COM-API层对所述DB-API层进行了再次封装;所述DB-COM-API层通过调 用所述DB-API层的抽象接口,对数据库进行操作。 优选地,所述数据表层的实现,包含:数据表描述; 所述数据表描述,包含对数据表进行如下的定义: 字段索引;表索引标记;字段描述;字段类型;字段占用空间大小;字段在记录中 的偏移;从查询结果中获取字段函数指针;更新该字段函数指针;以及,用一个数据结构描 述该数据表。 优选地,所述数据表层的实现,还包含:索引表描述; 所述索引表描述,包含:描述索引顺序;描述索引名;描述索引名长度。 优选地,所述DB-COM-API层将相应数据表的信息进行统一记录,包含对以下内容 的描述:数据库句柄;表名;表描述;索引描述;表字段数;索引数;通用查询输出查询结果 排序串。 优选地,所述DB-COM-API层的实现,包含提供如下的接口函数:数据库系统初始 化;数据库系统终止;数据库查询;数据库插入;数据库更新;数据库删除;数据库操作。 优选地,所述DB-API层的实现,包含封装数据库并实现如下的接口函数:系统初 始化;系统关闭函数;查询函数;数据更新函数;数据删除函数;数据插入函数;查询结果 释放函数;表使用函数。 优选地,所述数据库封装的实现方法应用于嵌入式系统。 针对现有两种实现方法的缺陷,本专利技术提出所述数据库封装的框架及实现方法, 具有如下的优点: 1、借鉴小型嵌入式数据库系统支持SQL的基本功能,避免直接对内存操作,增强 系统的数据库处理能力。 2、通过对各种开源嵌入式数据库系统的封装,使普通的嵌入式数据库开发人员不 必关注具体的数据库系统实现,以此可以大大提高数据库系统的开发速度以及可靠性。 3、通过对各种嵌入式数据库系统的支持,使本系统的适应性大大增加。通过对不 同数据库系统的选择,不仅可以适用各种小型的嵌入式设备,比如各种无线路由器,网关 等,还可以支持到0LT(光线路终端)等各种大型的嵌入式设备。【附图说明】 图1是本专利技术所述数据库封装框架的示意图; 图2是本专利技术所述数据库封装实现方法的示意图。【具体实施方式】 本专利技术实现一种数据库操作方案,通过对数据库进行封装,可以以一种相对简单 的方式对数据进行统一的操作,并且易于移植和扩展,从而适应于各种不同的嵌入式设备。 如图1所示,本专利技术所述数据库封装的框架分为5层,分别为: 数据库层,可以是开源或自研数据库,例如是SQLite,MySQL,Berkeley*DB等数据 库; DB-API层(数据库操作抽象层),是封装数据操作的API层(API指应用程序编程 接口),提供能实现数据库操作的抽象接口; DB-COM-API层(通用数据表操作封装层),其结合自定义数据表的定义,对DB-API 层进行再次封装,提供能统一实现数据表操作的接口; DBi-API层(具体数据表操作封装层),针对每个具体的数据表实现的API接口, 只需结合实际调用DB-COM-API层的API接口,即可实现对本数据表的对应操作; 数据表层,用来实现对单个具体的数据表分别定义。 对于实现一个新的数据表来说,只要实现相应的数据表层和DBi-API层,即可快 速地开发出需要的应用。 如图2所示,本专利技术数据库封装的实现方法,包括如下过程: 所述DB-API层的实现。由于不同数据库自身的实现方法是不一样的,因此在对数 据库进行直接操作之前,对数据库操作进行统一封装,使得对所当前第1页1 2 本文档来自技高网...

【技术保护点】
一种数据库封装的框架,其特征在于,包含:数据库层,包含若干数据库;DB‑API层,对数据库操作进行统一封装,提供实现数据库操作的抽象接口;DB‑COM‑API层,结合各数据表的定义,对所述DB‑API层进行再次封装,提供能实现数据表操作的通用接口;DBi‑API层,针对各个数据表的操作分别实现封装,提供通过调用所述DB‑COM‑API层的通用接口来对相应数据表进行操作的具体接口;数据表层,分别对各个数据表进行定义。

【技术特征摘要】

【专利技术属性】
技术研发人员:韩永华
申请(专利权)人:上海斐讯数据通信技术有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1