专利名称:一种基于Delphi的三层数据库系统的实现方法
技术领域:
本发明涉及数据库应用系统的开发,通过基于Delphi的三层数据库系统的实现能高效、安全的实现特有的数据库应用程序。
背景技术:
当前的数据库应用系统中,按其结构划分为两类,一类是两层结构的数据库应用系统,另ー类是多层结构的数据库应用系统。两层结构的数据库应用系统包括客户/服务器(C/S)模式和浏览器/服务器(B/S)模式,它的特点是数据和程序分离,数据库服务器端管理数据,客户机或浏览器显示、访问和更新数据,因此可以分别进行开发和维护,同时也降低了数据库服务器的工作量,减小了网络的流量,具有较强的安全性,但当客户端程序或浏览器较多时,服务器的性能会明显下降,而且应用逻辑安装在每个客户机上,如果系统要升级,就只能对客户机逐一进行,如果客户机分布在不同的地点,维护和升级任务将非常繁·重。为了解决两层结构应用系统的不足,人们提出了多层数据库应用系统的结构模式,具有代表性的是三层结构。
发明内容
针对以上的不足,本发明的目的是提出一种基于Delphi的三层数据库系统的实现方法,是ー种利用Microsoft存取通用数据源的标准引擎ADO进行操作。应用服务器是ー个远程数据模块,它是ー个COM程序,它通过ADO与SQL语句和数据库服务器连接。它负责从数据库服务器存取数据并通过DataSetProvider组件将数据分割成数据包,然后通过DCOM协议传递到网络上的客户端。客户端的组件负责还原数据,这项工作由DCOMConnection来完成。ClientDataSet组件是客户端数据集组件,它负责接收DCOMConnection组件还原过来的数据,并把数据传递给客户端数据处理组件,客户端数据处理和显不组件主要有 ADOQuery、ADOTable> DataSource> DBGricU DBEdit、DBComboBox等等,反过来,ClientDataSet组件负责收集客户端处理的数据,并把处理后的数据提交DCOMConnection组件,该组件通过DCOM协议和应用服务器正确地将数据写入数据库。
具体实施例方式首先建立应用服务器程序在窗体上添加ADOConnectionl、ADOTablel、DataSource, DBGridl四个组件,设置这四个组件的属性。保存所有文件,项目文件名为AppServer,单元文件名为Serverl。新建一个远程数据模块(RemoteData Module),设置类名为rdstu,在它的Uses子句中添加Serverl,这样rdstu模块就可以访问Serverl里面的组件了。在模块中添加组件DataSetProvider,设置它的DataSet属性为Forml. Tablel,这样可以将本地数据读到DCOM服务器上,并由DataSetProvider组件提供给客户端。保存单元文件,命名为Server2。其次是新建一个应用程序,在窗体上添加DCOMConnectionl、ClientDataSetUDataSourcel、DBGridl、DBNavigatorl 等组件。设置 DCOMConnectionl 的 ComputerName属性为服务器所在的计算机名,这样程序可以在网络上寻找服务器,如果本服务器已在本机注册,则不设置ComputerName属性;设置它的ServerName属性为AppServer. rdstu ;Connected属性为True,此时激活服务器程序。设置ClientDataSetl的RemoteServer属性为 DCOMConnectionl ;ProviderName 属性为 DataSetProviderl。这样 ClientDataSetl就可以通过 DCOMConnectionl 从 DataSetProviderl 组件读取数据了。DataSourcel 的DataDet 属性设置为 ClientDataSetl。DBGridl 和 DBNavigatorl 的 DataSource 属性设置为 DataSourcelo三层C/S结构具有更灵活的硬件系统构成,对于各个层可以选择与其处理负荷和处理特性相适应的硬件。合理地分割三层结构并使其独立,可以使系统的结构变得简单清晰,提高了程序的可维护性。三层C/S结构中,应用的各层可以并行开发,各层也可以选择 各自最适合的开发语言,有利于变更和维护应用技术规范。按层分割功能使各个程序的处理逻辑变得十分简单。在Delphi中主要通过DataSnap等技术来实现。
权利要求
1.一种基于Delphi的三层数据库系统的实现方法其特征是应用服务器是一个远程数据模块,它是ー个COM程序,它通过ADO与SQL语句和数据库服务器连接。它负责从数据库服务器存取数据并通过DataSetProvider组件将数据分割成数据包,然后通过DCOM协议传递到网络上的客户端。客户端的组件负责还原数据,这项工作由DCOMConnection来完成。
2.根据权利要求I所述,基于Delphi的三层数据库系统的实现方法,其特征是ClientDataSet组件是客户端数据集组件,它负责接收DCOMConnection组件还原过来的数据,并把数据传递给客户端数据处理组件,客户端数据处理和显示组件主要有ADOQuery、ADOTable> DataSource> DBGricU DBEdit、DBComboBox 等等,反过来,ClientDataSet 组件负责收集客户端处理的数据,并把处理后的数据提交DCOMConnection组件,该组件通过DCOM协议和应用服务器正确地将数据写入数据库。
全文摘要
一种基于Delphi的三层数据库系统的实现方法随着中间件与Web技术的发展,三层或多层分布式应用体系越来越流行。而中间件作为分布体系应用的关键技术,以其独特的优势为各种分布式应用的开发注入了强大动力,极大地推动了应用系统集成的发展。该方法是基于Delphi中间件的三层结构访问数据库信息一种高效率的连接及运行实现。
文档编号G06F9/44GK102841783SQ201110172338
公开日2012年12月26日 申请日期2011年6月24日 优先权日2011年6月24日
发明者杨际荣 申请人:镇江华扬信息科技有限公司