3.3 数据访问接口技术的确定
确定了编程语言及数据库系统之后,需要选择一种数据访问接口技术来为软件系统界面和数据库之间提供链接。其三者的结构关系如下图3.3所示。不难看出选择一种合适的数据访问接口技术无论是对软件系统运行的可靠性还是对数据库的访问响应时间都至关重要。
以下将对几种常用的数据库访问接口技术做简单介绍:
DAO(Data Access Object,数据访问对象)。DAO是Microsoft Jet数据库引擎中内置的编程接口,最初用于Microsoft Visual Basic。 DAO是Microsoft Jet
引擎提供整套的数据访问对象,其中封装了各种常用的数据库对象,如表、查询和Recordsets(就是含有多行记录的对象,用来作为对某个数据库查询之后返回的结果)。DAO通常用来访问本地桌面数据资源,如Microsoft Access,Microsoft Foxpro, Paradox等,也可以用来访问远程数据资源,但是不支持多线程,因此,必须限制调用到应用程序主线程的所有DAO o
ODBC(Open Database Connectivity,开放数据库互连)。ODBC是上个世纪八十年代末九十年代初出现的技术,它为编写关系数据库的客户软件提供了一种统一的接口。ODBC提供一个单一的API,可用十处理不同数据库的客户应用程序。使用ODBC API
的应用程序可以与任何具有ODBC驱动程序的关系数据库进行通信。
RDO(Remote Data Object,远程数据对象)。由十RDO直接调用ODBCAPI (而不是像DAO那样通过Jet引擎),所以,可以为使用关系数据库的应用程序提供更好的性能。
OLE DB(Object Link Embedded DataBase,对象链接与嵌入数据库)。OLEDB在两个方面对ODBC进行了扩展。首先,OLE DB提供了一个数据库编程的COM接口;第二,OLE DB提供了一个可用十关系型和非关系型数据源的接口。OLE DB的两个基本结构是OLE DB提供程序(Provider)和OLE DB用户程序(Consumer) 。
ADO(ActiveX Data Object ActiveX数据对象)。这是Microsoft开发数据库应用程序的面向对象的新接口。ADO建立在OLE DB基础之上,是对OLEDB的一种高性能、使用方便的应用程序接口。ADO简化了OLE DB,是COM自动接口,所有现在流行的快速应用程序开发工具、数据库工具、应用程序开发环境和脚本语言都可以访问这种接口。所以ADO是一种高层的访问技术,易十使用,访问灵活,应用广泛[15]。
综合比较这几种方式,ODBC通过DLL接口访问数据库,没有采取面向对象技术,因此不能用于绑定客户端(如脚本语言)。而 DAO也有缺陷,它必须根据使用的数据库改变工作空间,或是用Access的Jet工作空间,或是用ODBC Direct; 而DAO结构复杂,有多达13个集合和17个对象,不便于使用。ADO以其易于使用、速度快、内存耗用较低和磁盘空间占用较少的特点将完美胜任Visual Basic与Microsoft Office Access 2003的链接与访问。
4 热量表远程抄表管理系统软件设计
4.1 软件系统功能设计
根据需求分析并参考物业管理软件和当前物业管理的趋势,提出了热量表远程抄表管理系统的功能要求,首先对用户各种耗能数据的储存、处理和分析,具有数据传入、参数设置、历史数据查询、数据修改、数据打印、报表生成和系统文护等功能。所有用户的耗能数据最终将在PC中保存、累计和费用结算。PC机除了对用户的耗能数据进行了全面的抄收、管理之外,还可以方便地对系统各个节点的运行状态进行自检,以保证系统的正常运行。以下将对软件系统总体设计下提出的七大功能模块逐个进行叙述:
4.1.1 小区信息生成
设计此模块的目的旨在为每个房屋分配一个唯一的号码ID,其ID编码方式为“楼宇号”+“单元号”+“房号”。楼宇号采用两位数即从00到99可以容纳99幢大楼信息,单元号也采用两位数冲从00到99,房号则采用四位数字,前两位代表楼层号,从-9至99 ,后两位表示房屋所在单元中的编号。按照这种编码方式则小区最多可以容纳99幢楼,而每幢楼最多可以有99个单元,并且楼层可以达到-9至99层,而每层楼中又最多可以容纳99套房屋。以现在小区的规模,这种编码方式完全足够覆盖所有小区,甚至在今后的几十年里这种ID编码方式依然能够适用。此外这种ID编码方式的特点在于可以使小区内的任何两间房屋不会出现重复编号,这就避免了小区用户信息相互冲突的可能性,其次一旦了解了此种ID编码方式,只需给出一房屋编号便能直接知道其所在楼宇,单元及房号。例如给出ID“01111011”我们便可知道其代表01号楼宇,第11单元的1011号房。针对一些早期的小区其没有单元号我们则以00来代替。为了达到软件系统操作简单,界面友好的目的,在小区信息生成模块按钮下设置了3个分按钮(如图4.1),分别为楼宇编号生成,单元号生成和房号生成,让操作员进行小区信息生成时步步为营,条理清晰。
- 上一篇:AT89C52单片机温度检测及报警系统设计+源代码
- 下一篇:南京市新型公共交通系统适应性研究
-
-
-
-
-
-
-
河岸冲刷和泥沙淤积的监测国内外研究现状
电站锅炉暖风器设计任务书
中考体育项目与体育教学合理结合的研究
酸性水汽提装置总汽提塔设计+CAD图纸
杂拟谷盗体内共生菌沃尔...
乳业同业并购式全产业链...
大众媒体对公共政策制定的影响
当代大学生慈善意识研究+文献综述
java+mysql车辆管理系统的设计+源代码
十二层带中心支撑钢结构...