嵌入式数据库
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
嵌入式数据库
知识点: 嵌入式数据库的特点与种类 mSQL安装与配置 mSQL数据库基本操作函数 本次课将介绍嵌入式数据库的基础知识。首先,分析嵌入式系统中 的数据库的特点、现状及其发展;然后,重点讨论mSQL在嵌入式Linux 中的应用,将详细介绍它的安装、配置及数据库的建立过程,并结合 mSQL提供的API函数讨论其数据表的操作;最后,通过一个完整的实 例示范如何在用户应用程序中操作mSQL数据库。
1.2
mSQL简介
Mini SQL (mSQL )是嵌入式数据库家族中的佼佼者,它由澳大利亚的 David J. Hughes开发,目前最新版本是mSQL 3.8。本章将以.SQL 3.0为 例对其进行相应的介绍。 Mini SQL是一种小型的关系数据库管理系统。说它小,是因为它自身 结构紧凑小巧,占用系统资源少,不像大型通用数据库那样动辄数百兆 字节。事实上,mSQL功能十分强大,足以胜任大型数据集的索引、查 询任务。当然,mSQL终究是个小型数据库系统,它的设计初衷是用于 资源较少的环境下,所以某些标准SQL的功能它并不支持。 mSQL的1.x版本只能支持有限数目记录的数据集,2,0版本的数据库 引擎已经设计为可以处理大型记录集,可以为有百万笔记录的大型记录 集提供快速而一致的存取。mSQL 2.0还包括了新的w3-mSQL WWW接 口套件,通过使用W3-mSQL.应用程序可将mSQL及其他程序结构直接 植入HTML源代码而实现快速开发,这样就不必再为每一个具有动态内 容的网页编写大量脚本。但是这些版本在功能可配置方面都做得不是很 好,因此不适合在嵌入式系统中使用。 从mSQL 3.0版本开始,mSQL加入了许多新特性,其中最重大的改变 是它提供了两种版本的服务器端程序,以适应不同应用需求。一个是单 进程的服务器mrsql3d,另一个是多进程的服务器msql3_broker。单进程版 本服务器与mSQL 2.x的相同,而多进程版本服务器则允许多个客户端同 时连上服务器,而且客户端数目可设置。mSQL 3.0还扩大了对标准SQL 语法的支持范围,并且它对CPU和内存的利用率更高。这些新特性使得 mSQL 3.x无论是在企业级应用还是在系统资源紧张的嵌入式系统中都能 轻松胜任。
mSQL运行中使用的一些通用参数,一般在配置文件的general段设 定,下面分别介绍各个参数的意义。 Inst_Dir: mSQL安装路径,默认为/usr/local/msql3。 DB_Dir:用户建立的数据库文件保存路径,默认为%I/msqldb. 这里的%I代表上 面的Inst Dir.即DB_ Dir的默认 为/usr/local/msql3/msqldb。 Msql_User: mSQL服务器当前用户,默认值为daemon。若有 别的用户激活服务 器,则系统的用户号UID会发生改 变。 Admin_User:特权用户,默认值为root。特权用户可以执行特 权操作,如数据库 的建立与关闭等。 Pid_File: mSQL服务器进程号PID的保存文件完整路径,默 认为%I/msql3d.pid TCP_Port: rnSQL服务器的TCP服务端口,默认为11140基于 TCPIIP网络的客 户端通过这个端口与服务器连接。 UNIX_Port: mSQL服务器UNIX套接字文件完整路径,默认 为%I/msql3.sock。本 机客户端通过这个套接字文件与服 务器连接。 (2)System段。 MSQL的系统参数在配置文件的system段中设定,下面分别介绍各个 参数的意义。 .Msynch _Timer:定义mSQL服务器自动使内存数据与硬盘数据的间隔 时间同步,以 秒为单位,默认值为30a如果该值设为U,则服务器不 自动使内存与硬盘数据同步。 Hostes_ Lookup:决定是否需要土机IP地址。默认值为 True,表示不符合主机名称的连接请求将被拒绝。 Read_only:设置服务器工作模式为只读,拒绝任何修改数 据库的操作(只接受 select查询指令)。默认值为False 。 Remote_Access:允许基于TCPIIP网络的远端用户访问 mSQL服务器,默认值为False。 Local_Access:允许本机用户应用程序访问mSQL服务器, 默认值为True。 Query_Log:生成日志文件,以保存服务器接收及处理的所 有查询请求,默认值为False 。 Query_Log _File:如果Query_Log参数被设为True,则应设 置Query_Log _File为该日志文件的完整路径,一般设置
任何一家厂商能够做到一统天下。 随着各种移动设备和嵌入式设备进入普通百姓的日常生活,信息共享 及交流己成为人们生活中不可缺少的一部分。人们每天面对各种瞬息万 变的信息资料,如果没有数据库的帮助,这一切都是不可能实现的。 此外.在未来的军事、航空、国土资源管理、移动医疗等领域嵌入式 数据库系统也将占据主导作用,嵌入式数据库技术将使得信息在未来生 活中无处不在、无时不在。
$ ./msql3_borker & 串口输出错误信息: $ ./msql3_broker:/lib/libc.so.6:version“GLIBC_2.2.3” not found (required by /lib/libnsl.so.1) 由提示信息可知,是有关glibc库版本的问题,查看开发板文件系统中lib 库目录下的glibc库的版本号,使用命令: $ string /lib/tls/libc.so.6 | grep GLIBC 在命令终端显示libc库所支持的GLIBC版本: GLIBC_2.0 GLIBC_2.1.1 GLIBC_2.2.1 GLIBC_2.2.2 GLIBC_PRIVATE 可以看出根文件系统上的libc库最高只支持GLIBC_2.2.2,不能满足 mSQL3.0对GLIBC的要求。经试验发现,arm-linux-gcc2.95.3和armlinux-gcc3.4.1两个版本的交叉编译工具链的libc库都支持GLIBC_2.2.3及 其以上版本。经过对比发现了3.4.1版本的libc库大小为3MB,而2.95.3版 本的libc库大小为4MB,为了减小根文件系统的大小,使其满足嵌入式 系统体积尽可能小的目标,故选用3.4.1版本的libc库。用命令将armlinux-gcc3.4.1版本下的ld-2.2.3.so、libc.so.6和ld-linux.so.2拷贝至目标板 根文件系统。然后便能在目标板正常运行mSQL服务器。 1..3.3 mSQL系统配置 mSQL 3.0的系统配置文件名为msql .conf,位于安装目录下(默认 为/usr/local/msql3 ) 另外,所有标准mSQL应用程序及公用程序都可以通 过在执行时加上-f参数来指定一个非标准的配置文件,以强制改变原有 的默认参数值。这时当应用程序没有找到配置文件(或虽找到但有部分 参数未设定),就会自动使用默认值。 1.配置文件格式 配置文件由若干个段(section)组成,可包含空白行及注释,在注释之 前应有“#”字符。每个段落都有一个段落标题,用方括号括起作为段落 名称(例如:[general] ) 段落中参数值的设定方法:在参数名称之后跟上一个等号和相应的参 数值,等号之后的参数值即为新值,但是每一行只能有一个参数设定 项。如果配置文件中某些参数值未设定,则rnSQL执行时会使用内部默 认值。 2.配置文件参数说明 (1)General段。
1.3在Linux上安装和配置mSQL
1.3.1mSQL的安装 SQL以两种形式发布:一种是RpM软件包方式;另一种是用tar压缩的源代 码方式。 RPM软件包的安装很简单,命令如下: rpm -ivh rnsql-3.0-RELEASE.i386.rpm
RPM软件包管理器简化了系统更新的步骤,一个简单的命令就完成所有 文件的安装。 以源代码方式发布的mSQL的安装则要麻烦一些。首先,用tar程序解开 压缩包: tar -xvf msql-3.0.tar.gz 该命令会在当前目录中建立一个新的目录rnsql-3.0-RELEASE,它用于 存放所有的发布文件,包括源代码目录src及文档目录doc。接下来的安 装步骤与一般使用autoconf接口的Linux应用程序的安装步骤有所差异, 这里使用setup程序来设置后面的编译选项。所以,接下来应该调用命 令: ./ setup 该命令会将一些编译选项保存在src/site.mm文件中,如果用户需要改变 mSQL程序的安装路径以及C编译器的类型,可以修改该文件中的对应 内容。程序的默认安装路径为/usr/local/msql3。 接下来,即可开始编译mSQL的源程序,执行如下命令: ./make all 如果编译完成并且正确,则可以开始安装mSQL,只需简单输入以下命 令: ./make install 至此,rnSQL即被正确安装在系统中,可以开始使用。 1.3.2交叉编译mSQL 之前安装mSQL时对src/site.mm文件作了简单说明,交叉编译时需修 改此文件。下面列出了将要修改的地方: COMPILER= gcc –Wall 修改为COMPILER= /usr/local/arm/2.95.3/bin/arm-linux-gcc –Wall CPP= gcc –E 修改为CPP= /usr/local/arm/2.95.3/bin/arm-linux-gcc –E RANLIB= ranlib 修改为RANLIB= /usr/local/arm/2.95.3/bin/arm-linux-ranlib AR= ar 修改为AR= /usr/local/arm/2.95.3/bin/arm-linux-ar TARGET= Linux-2.4.20-8-i686 修改为TARGET= arm-linux 修改后即可编译安装了,和本地安装过程是一样的。 在本设计的实现中,移植mSQL时出现了一些问题,特别是目标板上原 libc库与mSQL3.0所要求的libc库版本不同。将移植好的mSQL文件拷贝 到目标板根文件系统上后启动mSQL数据库系统,orce_ Munmap:设置mSQL服务器自己完成同步内存映像 文件的任务,而不依靠操作系统来完成,这样做可以保 证在性能不稳定的操作系统中的数据的完整性。默认值 为False。 Nurn_Children:设置mSQL多进程服务器可以同时处理的 任务数。默认值为2。 Table_ Cache:设置数据表缓冲区中容纳的记录数.默认值 为8。这个数值越大, 所占用的内存及文件描述符越 多,所以在嵌入式系统中这个数值可以设得小一些,但 不能小于20 Sortes_Maxes_Mern:设置执行ORDER BY或DISTINCT操 作时所占用的最大内存,默认值为1000。 3.配置文件范例 要配置出合适的mSQL数据库管理系统,所要做的工作就是修改其 配置文件msql.conf。 在实际应用中经常需要改动的是Msql_Uer和Admin_User这两个参 数。Msql_USER用于设置运行mSQL数据库服务器程序的用户,而 Admin_User用于设置能对mSQL数据库系统执行特权操作的用户。因 此,如果设置Msql_User = dlrman, Admin_User=admin,则表示将由dhman 用户运行服务器程序,由admine用户执行特权操作。 配置完成后,以root身份登录,创建dbman用户,命令如下: Useradd -g sqlusers dhrnan 接下来,将/usr/local/msql3目录下的文件及目录的拥有者改为 dhman,执行以下命令: Chown -R dbrnan 再进/usr/local/msql /bin目录,输入如下命令: ./msql3d& 这样就以后台执行方式启动了mSQL数据库系统,从而开始进行具 体的数据库创建、查询等操作了。 以下是一个配置文件的简单范例,文件内容如下:
1.1嵌入式系统中的数据库
同多数计算系统相似,嵌入式系统也常常需要数据库支持。虽然很多 情况下可以用文件方式实现部分数据库功能,但是当应用程序需要执行 一些比较复杂的数据操作(如数据排序或检索)时,文件方式就无能为力 了。正因为如此,越来越多的厂商及个人开发出性能各异的嵌入式数据 库产品,并且在实际应用中不断发展完善。 1.1.1嵌入式数据库特点 由于应用环境的特殊限制。嵌入式数据库相对普通数据库系统而言 有其自身特点: A. 支持常用嵌入式系统(如Linux,Windnws CE,Palm OS等多种 操作系统)和通 信协议。内核小,占用内存少。 B. 提供数据库功能的自由定制,能够根据具体应用或行业特 点定制系统功能。 C. 方便的查询功能,支持SQL查询语句。 D. 完善的数据管理功能,支持SQL标准的子集,提供数据库 及数据表的管理等功能。 E. 操作简单方便,提供简明的API接口,可在高级语言中方 便调用。 1.1.2嵌入式数据库现状与发展 数据库技术发展的原动力主要来自于不断扩大的应用需求及其支撑技 术的成熟。嵌入式数据库随着各种移动设备、智能计算设备、嵌入式设 备的发展而迅速发展。随着嵌入式应用对数据管理的要求不断提高,嵌 入式数据库技术的地位也日显重要,它将在各个应用领域中扮演越来越 重要的角色。 目前国际、国内嵌入式数据库产品及其应用处于一种“百花齐放、百 家争鸣”的状态,应用需求多种多样,计算平台也是各有特色,还没有
知识点: 嵌入式数据库的特点与种类 mSQL安装与配置 mSQL数据库基本操作函数 本次课将介绍嵌入式数据库的基础知识。首先,分析嵌入式系统中 的数据库的特点、现状及其发展;然后,重点讨论mSQL在嵌入式Linux 中的应用,将详细介绍它的安装、配置及数据库的建立过程,并结合 mSQL提供的API函数讨论其数据表的操作;最后,通过一个完整的实 例示范如何在用户应用程序中操作mSQL数据库。
1.2
mSQL简介
Mini SQL (mSQL )是嵌入式数据库家族中的佼佼者,它由澳大利亚的 David J. Hughes开发,目前最新版本是mSQL 3.8。本章将以.SQL 3.0为 例对其进行相应的介绍。 Mini SQL是一种小型的关系数据库管理系统。说它小,是因为它自身 结构紧凑小巧,占用系统资源少,不像大型通用数据库那样动辄数百兆 字节。事实上,mSQL功能十分强大,足以胜任大型数据集的索引、查 询任务。当然,mSQL终究是个小型数据库系统,它的设计初衷是用于 资源较少的环境下,所以某些标准SQL的功能它并不支持。 mSQL的1.x版本只能支持有限数目记录的数据集,2,0版本的数据库 引擎已经设计为可以处理大型记录集,可以为有百万笔记录的大型记录 集提供快速而一致的存取。mSQL 2.0还包括了新的w3-mSQL WWW接 口套件,通过使用W3-mSQL.应用程序可将mSQL及其他程序结构直接 植入HTML源代码而实现快速开发,这样就不必再为每一个具有动态内 容的网页编写大量脚本。但是这些版本在功能可配置方面都做得不是很 好,因此不适合在嵌入式系统中使用。 从mSQL 3.0版本开始,mSQL加入了许多新特性,其中最重大的改变 是它提供了两种版本的服务器端程序,以适应不同应用需求。一个是单 进程的服务器mrsql3d,另一个是多进程的服务器msql3_broker。单进程版 本服务器与mSQL 2.x的相同,而多进程版本服务器则允许多个客户端同 时连上服务器,而且客户端数目可设置。mSQL 3.0还扩大了对标准SQL 语法的支持范围,并且它对CPU和内存的利用率更高。这些新特性使得 mSQL 3.x无论是在企业级应用还是在系统资源紧张的嵌入式系统中都能 轻松胜任。
mSQL运行中使用的一些通用参数,一般在配置文件的general段设 定,下面分别介绍各个参数的意义。 Inst_Dir: mSQL安装路径,默认为/usr/local/msql3。 DB_Dir:用户建立的数据库文件保存路径,默认为%I/msqldb. 这里的%I代表上 面的Inst Dir.即DB_ Dir的默认 为/usr/local/msql3/msqldb。 Msql_User: mSQL服务器当前用户,默认值为daemon。若有 别的用户激活服务 器,则系统的用户号UID会发生改 变。 Admin_User:特权用户,默认值为root。特权用户可以执行特 权操作,如数据库 的建立与关闭等。 Pid_File: mSQL服务器进程号PID的保存文件完整路径,默 认为%I/msql3d.pid TCP_Port: rnSQL服务器的TCP服务端口,默认为11140基于 TCPIIP网络的客 户端通过这个端口与服务器连接。 UNIX_Port: mSQL服务器UNIX套接字文件完整路径,默认 为%I/msql3.sock。本 机客户端通过这个套接字文件与服 务器连接。 (2)System段。 MSQL的系统参数在配置文件的system段中设定,下面分别介绍各个 参数的意义。 .Msynch _Timer:定义mSQL服务器自动使内存数据与硬盘数据的间隔 时间同步,以 秒为单位,默认值为30a如果该值设为U,则服务器不 自动使内存与硬盘数据同步。 Hostes_ Lookup:决定是否需要土机IP地址。默认值为 True,表示不符合主机名称的连接请求将被拒绝。 Read_only:设置服务器工作模式为只读,拒绝任何修改数 据库的操作(只接受 select查询指令)。默认值为False 。 Remote_Access:允许基于TCPIIP网络的远端用户访问 mSQL服务器,默认值为False。 Local_Access:允许本机用户应用程序访问mSQL服务器, 默认值为True。 Query_Log:生成日志文件,以保存服务器接收及处理的所 有查询请求,默认值为False 。 Query_Log _File:如果Query_Log参数被设为True,则应设 置Query_Log _File为该日志文件的完整路径,一般设置
任何一家厂商能够做到一统天下。 随着各种移动设备和嵌入式设备进入普通百姓的日常生活,信息共享 及交流己成为人们生活中不可缺少的一部分。人们每天面对各种瞬息万 变的信息资料,如果没有数据库的帮助,这一切都是不可能实现的。 此外.在未来的军事、航空、国土资源管理、移动医疗等领域嵌入式 数据库系统也将占据主导作用,嵌入式数据库技术将使得信息在未来生 活中无处不在、无时不在。
$ ./msql3_borker & 串口输出错误信息: $ ./msql3_broker:/lib/libc.so.6:version“GLIBC_2.2.3” not found (required by /lib/libnsl.so.1) 由提示信息可知,是有关glibc库版本的问题,查看开发板文件系统中lib 库目录下的glibc库的版本号,使用命令: $ string /lib/tls/libc.so.6 | grep GLIBC 在命令终端显示libc库所支持的GLIBC版本: GLIBC_2.0 GLIBC_2.1.1 GLIBC_2.2.1 GLIBC_2.2.2 GLIBC_PRIVATE 可以看出根文件系统上的libc库最高只支持GLIBC_2.2.2,不能满足 mSQL3.0对GLIBC的要求。经试验发现,arm-linux-gcc2.95.3和armlinux-gcc3.4.1两个版本的交叉编译工具链的libc库都支持GLIBC_2.2.3及 其以上版本。经过对比发现了3.4.1版本的libc库大小为3MB,而2.95.3版 本的libc库大小为4MB,为了减小根文件系统的大小,使其满足嵌入式 系统体积尽可能小的目标,故选用3.4.1版本的libc库。用命令将armlinux-gcc3.4.1版本下的ld-2.2.3.so、libc.so.6和ld-linux.so.2拷贝至目标板 根文件系统。然后便能在目标板正常运行mSQL服务器。 1..3.3 mSQL系统配置 mSQL 3.0的系统配置文件名为msql .conf,位于安装目录下(默认 为/usr/local/msql3 ) 另外,所有标准mSQL应用程序及公用程序都可以通 过在执行时加上-f参数来指定一个非标准的配置文件,以强制改变原有 的默认参数值。这时当应用程序没有找到配置文件(或虽找到但有部分 参数未设定),就会自动使用默认值。 1.配置文件格式 配置文件由若干个段(section)组成,可包含空白行及注释,在注释之 前应有“#”字符。每个段落都有一个段落标题,用方括号括起作为段落 名称(例如:[general] ) 段落中参数值的设定方法:在参数名称之后跟上一个等号和相应的参 数值,等号之后的参数值即为新值,但是每一行只能有一个参数设定 项。如果配置文件中某些参数值未设定,则rnSQL执行时会使用内部默 认值。 2.配置文件参数说明 (1)General段。
1.3在Linux上安装和配置mSQL
1.3.1mSQL的安装 SQL以两种形式发布:一种是RpM软件包方式;另一种是用tar压缩的源代 码方式。 RPM软件包的安装很简单,命令如下: rpm -ivh rnsql-3.0-RELEASE.i386.rpm
RPM软件包管理器简化了系统更新的步骤,一个简单的命令就完成所有 文件的安装。 以源代码方式发布的mSQL的安装则要麻烦一些。首先,用tar程序解开 压缩包: tar -xvf msql-3.0.tar.gz 该命令会在当前目录中建立一个新的目录rnsql-3.0-RELEASE,它用于 存放所有的发布文件,包括源代码目录src及文档目录doc。接下来的安 装步骤与一般使用autoconf接口的Linux应用程序的安装步骤有所差异, 这里使用setup程序来设置后面的编译选项。所以,接下来应该调用命 令: ./ setup 该命令会将一些编译选项保存在src/site.mm文件中,如果用户需要改变 mSQL程序的安装路径以及C编译器的类型,可以修改该文件中的对应 内容。程序的默认安装路径为/usr/local/msql3。 接下来,即可开始编译mSQL的源程序,执行如下命令: ./make all 如果编译完成并且正确,则可以开始安装mSQL,只需简单输入以下命 令: ./make install 至此,rnSQL即被正确安装在系统中,可以开始使用。 1.3.2交叉编译mSQL 之前安装mSQL时对src/site.mm文件作了简单说明,交叉编译时需修 改此文件。下面列出了将要修改的地方: COMPILER= gcc –Wall 修改为COMPILER= /usr/local/arm/2.95.3/bin/arm-linux-gcc –Wall CPP= gcc –E 修改为CPP= /usr/local/arm/2.95.3/bin/arm-linux-gcc –E RANLIB= ranlib 修改为RANLIB= /usr/local/arm/2.95.3/bin/arm-linux-ranlib AR= ar 修改为AR= /usr/local/arm/2.95.3/bin/arm-linux-ar TARGET= Linux-2.4.20-8-i686 修改为TARGET= arm-linux 修改后即可编译安装了,和本地安装过程是一样的。 在本设计的实现中,移植mSQL时出现了一些问题,特别是目标板上原 libc库与mSQL3.0所要求的libc库版本不同。将移植好的mSQL文件拷贝 到目标板根文件系统上后启动mSQL数据库系统,orce_ Munmap:设置mSQL服务器自己完成同步内存映像 文件的任务,而不依靠操作系统来完成,这样做可以保 证在性能不稳定的操作系统中的数据的完整性。默认值 为False。 Nurn_Children:设置mSQL多进程服务器可以同时处理的 任务数。默认值为2。 Table_ Cache:设置数据表缓冲区中容纳的记录数.默认值 为8。这个数值越大, 所占用的内存及文件描述符越 多,所以在嵌入式系统中这个数值可以设得小一些,但 不能小于20 Sortes_Maxes_Mern:设置执行ORDER BY或DISTINCT操 作时所占用的最大内存,默认值为1000。 3.配置文件范例 要配置出合适的mSQL数据库管理系统,所要做的工作就是修改其 配置文件msql.conf。 在实际应用中经常需要改动的是Msql_Uer和Admin_User这两个参 数。Msql_USER用于设置运行mSQL数据库服务器程序的用户,而 Admin_User用于设置能对mSQL数据库系统执行特权操作的用户。因 此,如果设置Msql_User = dlrman, Admin_User=admin,则表示将由dhman 用户运行服务器程序,由admine用户执行特权操作。 配置完成后,以root身份登录,创建dbman用户,命令如下: Useradd -g sqlusers dhrnan 接下来,将/usr/local/msql3目录下的文件及目录的拥有者改为 dhman,执行以下命令: Chown -R dbrnan 再进/usr/local/msql /bin目录,输入如下命令: ./msql3d& 这样就以后台执行方式启动了mSQL数据库系统,从而开始进行具 体的数据库创建、查询等操作了。 以下是一个配置文件的简单范例,文件内容如下:
1.1嵌入式系统中的数据库
同多数计算系统相似,嵌入式系统也常常需要数据库支持。虽然很多 情况下可以用文件方式实现部分数据库功能,但是当应用程序需要执行 一些比较复杂的数据操作(如数据排序或检索)时,文件方式就无能为力 了。正因为如此,越来越多的厂商及个人开发出性能各异的嵌入式数据 库产品,并且在实际应用中不断发展完善。 1.1.1嵌入式数据库特点 由于应用环境的特殊限制。嵌入式数据库相对普通数据库系统而言 有其自身特点: A. 支持常用嵌入式系统(如Linux,Windnws CE,Palm OS等多种 操作系统)和通 信协议。内核小,占用内存少。 B. 提供数据库功能的自由定制,能够根据具体应用或行业特 点定制系统功能。 C. 方便的查询功能,支持SQL查询语句。 D. 完善的数据管理功能,支持SQL标准的子集,提供数据库 及数据表的管理等功能。 E. 操作简单方便,提供简明的API接口,可在高级语言中方 便调用。 1.1.2嵌入式数据库现状与发展 数据库技术发展的原动力主要来自于不断扩大的应用需求及其支撑技 术的成熟。嵌入式数据库随着各种移动设备、智能计算设备、嵌入式设 备的发展而迅速发展。随着嵌入式应用对数据管理的要求不断提高,嵌 入式数据库技术的地位也日显重要,它将在各个应用领域中扮演越来越 重要的角色。 目前国际、国内嵌入式数据库产品及其应用处于一种“百花齐放、百 家争鸣”的状态,应用需求多种多样,计算平台也是各有特色,还没有