数据库管理、检索方法及嵌入式系统技术方案

技术编号:9694708 阅读:96 留言:0更新日期:2014-02-21 01:02
本发明专利技术公开了一种数据库管理、检索方法及嵌入式系统,其中所述数据库管理方法包括以下步骤:在所述SQLite数据库中建立一关键字和索引参数表,在所述DBM数据库中建立一索引参数和存储数据结构表;在所述SQLite数据库查找是否存在所述输入关键字;从所述SQLite数据库读取与所述输入关键字对应的索引参数,并在所述DBM数据库查找所述索引参数所对应的存储数据结构;将所述索引参数和所述输入存储数据加入所述索引参数和存储数据结构表。本发明专利技术还公开了检索所述数据库管理方法建立的数据库的数据库检索方法,以及具有所述数据库的嵌入式系统。本发明专利技术有效地利用了嵌入式系统的存储空间还实现了高效检索的功能。

【技术实现步骤摘要】
数据库管理、检索方法及嵌入式系统
本专利技术涉及一种数据库管理、检索方法及嵌入式系统,特别是涉及一种用于嵌入式系统的数据库管理、检索方法及使用所述方法的嵌入式系统。
技术介绍
嵌入式系统中的数据存储和管理主要包含两个部分,一个是将用户或者系统管理者下发的配置命令中的数据保存在本地的存储设备;另一部分则是将这些配置命令和数据传递到驱动等下层模块,完成对本地设备的参数配置。随着嵌入式系统的广泛应用及用户对数据处理和管理需求的不断提高,各种智能设备与数据库技术的紧密结合得到重视。在设计这样数据库时不仅要考虑数据操作的效率,还需要考虑嵌入式设备本身存储容量小的特性但是目前很多嵌入式系统中基本只采用一种数据库进行存储和管理,比如:SQLite数据库或DBM数据库。其中SQLite数据库是一款轻型的数据库,是遵守ACID (原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability))的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它能够支持Windows/Linux/Unix (微软公司等制作的操作系统)等等主流的操作系统,其中DBM数据库是Unix系统的数据库,使用哈希结构保存非结构化数据。但这个数据库不符合ANSI (美国国家标准协会)标准的SQL (结构化查询语言)技术规范,它只是一个存储检索数据的例程。DBM数据库适合存储静态的,索引化的数据结构,它在创建数据项时非常慢,但检索数据项时非常快。在嵌入式系统中采用SQLite数据库时比较的常用的法是创建多个包含数据的表,在通过SQL语言来进行相关操作。该方法的缺点是只支持特定数据类型,无法存储用户自定义的数据类型;在嵌入式系统中采用DBM数据库时通常采用的方法是将所有数据逐条的存储在数据库中,之后通过遍历整个数据库来进行后续的操作。缺点是查找效率低,相对比较浪费系统资源。
技术实现思路
本专利技术要解决的技术问题是为了克服现有技术中嵌入式系统的数据库操作效率低,兼容性差的缺陷,提供一种数据库管理、检索方法及嵌入式系统,通过在利用SQLite数据库和DBM数据库的优点,实现在嵌入式系统资源的利用率。本专利技术是通过下述技术方案来解决上述技术问题的:本专利技术提供了一种数据库管理方法,用于管理嵌入式系统的数据库,其特点是,所述嵌入式系统包括一 SQLite数据库和一 DBM数据库,所述数据库管理方法包括以下步骤:S1、基于一关键字集合在所述SQLite数据库中建立一关键字和索引参数表,在所述DBM数据库中建立一索引参数和存储数据结构表;其中在所述SQLite数据库中建立的关键字和索引参数表和在所述DBM数据库中建立索引参数和存储数据结构表均属于SOLite数据库和DBM数据库中已知的惯用存储和检索手段,所以此处不再详细赘述。S2、读入一输入数据,并将所述输入数据拆分为一输入关键字和一输入存储数据;本专利技术中在用户向嵌入式系统的数据库数据时,为了便于数据库的检索以及存储利用率的提高,需要提取便于检索的关键字,其中所述关键字的种类是基于用户的实际需要,例如列车行业的常用术语等,自由地定义和设置,所述关键字的提取方式可以基于关键字的种类自由地选择,本专利技术不限制所述输入数据中关键字的提取方式和关键字的种类。S3、在所述SQLite数据库查找是否存在所述输入关键字,若存在进入步骤S4,否则进入步骤S6 ;S4、从所述SQLite数据库读取与所述输入关键字对应的索引参数;S5、在所述DBM数据库中查找所述索引参数所对应的存储数据结构是否存在,若存在,流程结束,否则将所述输入存储数据加入所述存储数据结构中,流程结束;本专利技术中在关键字已经在SQLite数据库中存在的情况下,在DBM数据库中的存储数据结构加入新的输入数据。其中所述存储数据结构基于所述输入数据的种类进行任意的选择,例如数组、栈或表等结构,本专利技术中不限制所述存储数据结构的形式。S6、将所述输入关键字加入所述关键字和索引参数表并相应地生成对应于所述输入关键字的索引参数;S7、将对应于所述输入关键字的索引参数和所述输入存储数据加入所述索引参数和存储数据结构表。本专利技术还在SQLite数据库中添加新的关键词,并相应地在DBM数据库中添加新的输入数据。从而进一步地扩展存储的数据。本专利技术还提供了一种数据库检索方法,用于检索嵌入式系统的数据库,其特点是,使用通过如上所述的数据库管理方法得到的嵌入式系统的数据库,其中所述数据库检索方法包括以下步骤:Sn、读入一输入关键字;S12、在所述SQLite数据库中查找是否存在所述输入关键字,若存在,进入步骤S13,否则重复步骤S11 ;S13、从所述SQLite数据库中读取与所述输入关键字对应的一索引参数;S14、在所述DBM数据库中查找与所述索引参数对应的存储数据结构;S15、返回所述存储数据结构。本专利技术中利用SQLite数据库的快速检索能力和DBM数据库的存储数据多样性地特点,在嵌入式系统中实现了节省空间和自定义数据结构的存储的功能。本专利技术又提供了一种嵌入式系统,其特点是包括一 SQLite数据库和一 DBM数据库,其中所述SQLite数据库和DBM数据库通过如上所述数据库管理方法建立。在符合本领域常识的基础上,上述各优选条件,可任意组合,即得本专利技术各较佳实例。本专利技术的积极进步效果在于:由于现有的嵌入式设备中存储设备的容量相对比较小,在完成系统、处理器等运行任务的同时还要存储大量的数据,因而需要合理的利用这些存储空间;同时在复杂的系统数据架构下,有大量的结构复杂的数据需要存储。所以本专利技术的数据库管理、检索方法及嵌入式系统,不仅考虑了存储空间的有限性,也考虑了系统操作的效率,在系统中同时采用SQLite数据库和DBM数据库。而且利用SQLite数据库快速查找的特性,将需要快速定位的参数保存在SQLite数据库中,并且利用DBM可以保存自定义数据的特性,将需要传递给系统其它模块的自定义结构保存在DBM数据库中。从而在管理和操作数据库时通过在数据库中加入特定的索引来完成SQLite数据库和DBM数据库中数据的操作。所以有效地利用了嵌入式系统的存储空间还实现了高效检索的功能。【附图说明】图1为本专利技术的较佳实施例的嵌入式系统的结构示意图。图2为本专利技术的较佳实施例的数据库管理方法的流程图。图3为本专利技术的较佳实施例的数据库检索方法的流程图。【具体实施方式】下面通过实施例的方式进一步说明本专利技术,但并不因此将本专利技术限制在所述的实施例范围之中。如图1所示,本实施例的嵌入式系统包括一 SQLite数据库I和一 DBM数据库2。其中本实施例中首先建立所述SQLite数据库I的模型:对于用户端或者管理员来说,需要对嵌入式设备进行数据的发送和配置信息的管理,而这些数据会以一定形式放入数据库进行保存,在本实施例中我们仅以字符串组的形式进行讨论。这些字符串组包含了多个关键字和参数值,如何将这些具有多个关键字中的有效数据保存到相应的数据库中,就需要对数据库中的表进行查找。所述SQLite数据库I在这里保存的是字符串组中的关键字和对应的DBM数据库2的索引,并非具体的参数,并且对于由几个关键字组成的唯一的一条记录赋本文档来自技高网
...

【技术保护点】
一种数据库管理方法,用于管理嵌入式系统的数据库,其特征在于,所述嵌入式系统包括一SQLite数据库和一DBM数据库,所述数据库管理方法包括以下步骤:S1、基于一关键字集合在所述SQLite数据库中建立一关键字和索引参数表,在所述DBM数据库中建立一索引参数和存储数据结构表;S2、读入一输入数据,并将所述输入数据拆分为一输入关键字和一输入存储数据;S3、在所述SQLite数据库查找是否存在所述输入关键字,若存在进入步骤S4,否则进入步骤S6;S4、从所述SQLite数据库读取与所述输入关键字对应的索引参数;S5、在所述DBM数据库中查找所述索引参数所对应的存储数据结构是否存在,若存在,流程结束,否则将所述输入存储数据加入所述存储数据结构中,流程结束;S6、将所述输入关键字加入所述关键字和索引参数表并相应地生成对应于所述输入关键字的索引参数;S7、将对应于所述输入关键字的索引参数和所述输入存储数据加入所述索引参数和存储数据结构表。

【技术特征摘要】
1.一种数据库管理方法,用于管理嵌入式系统的数据库,其特征在于,所述嵌入式系统包括一 SQLite数据库和一 DBM数据库,所述数据库管理方法包括以下步骤: 51、基于一关键字集合在所述SQLite数据库中建立一关键字和索引参数表,在所述DBM数据库中建立一索引参数和存储数据结构表; 52、读入一输入数据,并将所述输入数据拆分为一输入关键字和一输入存储数据; 53、在所述SQLite数据库查找是否存在所述输入关键字,若存在进入步骤S4,否则进入步骤S6 ; 54、从所述SQLite数据库读取与所述输入关键字对应的索引参数; 55、在所述DBM数据库中查找所述索引参数所对应的存储数据结构是否存在,若存在,流程结束,否则将所述输入存储数据加入所述存储数据结构中,流程结束; 56、将所述输入关键字加入所述关键字和索引参数表并相应地生成对应于所述输入关键字的索引参...

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

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

1