Delphi通过ADO技术访问数据库方法研究
2013-06-23崔园
崔园
(成都医学院 人文信息管理学院计算机教研室,四川 成都 610500)
Delphi是由Borland公司推出的,呈现了全新的可视化编程环境,为我们提供了一种方便、快捷的Windows应用程序开发工具,对于广大的程序开发人员来讲,它具有简单、高效、功能强大的特点。Delphi和VC相比,更简单、更易于掌握,而在功能上却丝毫不逊色;和VB相比,Delphi则功能更强大、更实用。可以说Delphi同时兼备了VC功能强大和VB简单易学的特点。因此,使用Delphi开发应用软件,无疑会大大地提高编程效率,自然成为程序员至爱的编程工具。
Delphi主要具有以下几个特征:基于窗体和面向对象的方法,强大的数据库支持,与Windows编程紧密结合,高速的编译器,强大而成熟的组件技术。另外,Delphi还提供了各种开发工具,包括集成环境、图像编辑(Image Editor),以及各种开发数据库的应用程序,如Desktop DataBase Expert等。在Delphi众多的优势当中,它在数据库方面的特长显得尤为突出:适应于多种数据库结构,从客户机/服务机模式到多层数据结构模式;高效率的数据库管理系统和新一代更先进的数据库引擎;最新的数据分析手段和提供大量的企业组件。数据库访问链路,二是用户界面,这是典型的数据库应用程序的体系结构。Delphi的数据库体系结构如下:
1 数据库的体系结构
一个数据库应用程序在逻辑上通常由两部分组成:一是
在这个体系中,可以看出通过数据源可以访问数据库。数据模块在整个数据库应用程序结构中起着非常重要的作用,它包含了数据源、数据集和数据连接3大部分,其中数据源是用户界面和数据集之间的通道,由于用户界面并不直接与数据集连接,这就增加了对数据操作的灵活性。比如,多个数据觉醒控件可以共用一个数据源,当用户用一个控件操作数据记录时,其他控件显示的记录可以与之保持同步变化;另外一部分是数据集,它是数据库应用程序的核心部分,该数据集主要是来自底层数据库的记录集,它可以是一个数据库表、或者是一个表的记录子集、一个多表视图等等。通过数据集的缓冲,可以对业务逻辑进行集中处理而不立即影响数据库中物理的表;数据连接在数据库应用程序中起着数据传递的作用,不同的数据集使用不同的连接机制,这些不同的数据库访问机制又影响到数据库应用程序的结构。数据库的连接包括直接连接数据库服务器、使用磁盘上的专用文件、与其他数据集的连接以及基于ADO的应用程序服务器连接。
2 Delphi链接数据库的方式
Delphi 7为用户提供了两种连接数据库的方式:
BDE(Borland Database Engine,Borland数据库引擎)方式:Borland公司提供的专门的数据库连接方法。
ADO(Active Data Objects,动态数据对象)方式:是Borland对微软公司的ADO数据库连接引擎的封装。当发行基于它的数据库应用系统时,不需要对数据库驱动打包,基本的Windows 2000/XP系统就能支持ADO数据库技术,这是ADO技术一个突出的特点。
用户在Delphi中使用ADO连接数据库的过程和方法可以用图2说明。从图中可以看出,ADOConnction可以连接ADO技术支持的任何数据库,它在具体的数据库和ADODataSet之间建立了一个集聚层,使得DataSet数据集独立于数据库系统。
图2 Delphi数据库体系详图Fig.2 Architecture of Delphi database
3 Delphi提供的数据库开发组件
Delphi组件面板上提供的开发数据库应用程序所要使用的组件包括以下3类:
1)数据集和连接组件:该类组件可以针对不同的数据库驱动接口方案,提供对应的数据库连接和数据集专用组件。
2)数据访问组件:该类组件主要用于连接数据集组件和数据控制组件,可以访问数据库中的数据库表。
3)数据控制组件:该类组件用来与用户交互,可以显示或者修改数据库中的数据。
在Delphi中的数据控制组件通常称为数据觉醒(data aware)控件或数据绑定(data binding)控件,它们具有自动感知数据的能力,因这些控件的这一特点使得用户进行数据库应用程序的设计更加便利和灵活。它们位于组件面板的Data Controls页。
4 如何用ADO链接SQL server 2000数据库
图3展示了ADO连接数据库体系结构,现在我们将ADOCon连接到SQL Server 2000数据库服务器,具体步骤如下:
图3 ADO连接数据库体系结构Fig.3 Architecture of ADO connection the database
1)双击ADOCon,可打开下图所示的“FData.ADOCon Connection String”窗口;
2)点击Build按钮,打开“数据库连接属性”窗口,在其中的 “OLE DB提供程序”列表中选中 “Microsoft OLE DB Provider for SQL Server”项,点击“下一步”按钮,切换到该窗口的“连接”选项卡,如图4所示;
3)在第2项中,选择“使用Windows集成安全设置”登录SQL Server数据库;在“在数据库服务器上选择数据库”下拉列表中选定事先建立的数据库;
4)点击“确定”按钮,可返回如图4所示的窗口,这时其中的“Use Connection String”下的文本框中应该有了相应的内容;点击“OK”按钮,可以看到ADOCon的ConnectionString属性后有了内容。
图4 ADOCon连接到SQL Server 2000数据库服务器Fig.4 ADOCon connection the database server of SQL Server 2000
5 结 论
Delphi软件是一个优秀的数据库管理系统开发工具。它不仅为用户提供了丰富的控件进行开发简洁高效的数据库管理系统,而且还很具有灵活性开发通用程序,这种强大的功能相比其它专用数据库开发系统具有更多的优势。
由于ADO技术的快速普及,从Delphi 5.0开始,加入了ADO技术的模块,并逐步成为Delphi数据库设计的主流。同Visual Basic软件的ADODC相比,Delphi软件还是具有自身特点的,特别是在数据绑定方面,它更多的吸收了BDE的特点,可以做到和原来的程序兼容;另一方面,它又可以接受标准ADO技术的各种属性和方法,Delphi软件在接受这些属性和方法时,它又是和数据绑定控件脱离的,当然从某种角度来说,这种方案提高了执行效率,给设计人员以更多的选择。
[1]廖梦虎.Delphi 2010中使用ADO对象模型存取数据库的3种方法[J].电脑编程技巧与维护,2012(8):46-47.LIAO Meng-hu.Three methods of using ADO object model to access database in delphi 2010[J].Computer Programming Skills and Maintenance,2012(8):46-47.
[2]王琪.Delphi下ADO+ODAC操作异构数据库的方法——“经济效益评价”软件辅助工具开发[J].中国管理信息化,2012(5):53-54.WANG Qi.The methods to operate heterogeneous database methods in Delphi ADO+ODAC-- “economic profit evaluation”software tool development[J].China Management Informationization,2012(5):53-54.
[3]周厚福.Delphi中的数据库编程应用[J].中国科技博览,2010(12):300.ZHOU Hou-fu.Delphi database application programming[J].China Science and Technology Review,2010(12):300.
[4]黄荣喜.浅析Delphi中ADO与SQL Server 2000数据库的连接[J].科技资讯,2008(1):100.HUANG Rong-xi.Simple discussion on the connection between ADO and SQL Server 2000 in Delphi[J].Information of Science and Technology,2008(1):100.
[5]胡微.基于Delphi建立数据库应用程序[J].跨世纪,2008,16(11):222-223.HU Wei.Using Delphi to establish database applications[J].Cross a Century,2008,16(11):222-223.
[6]黄芳.Delphi7存取配置文件实现与SQL Server数据库连接[J].电脑编程技巧与维护,2012(10):44-45.HUANG Fang.Delphi7 access configuration file to achieve with the SQL Server database connections[J].Computer Programming Skills and Maintenance,2012(10):44-45.