DCOM协议

2024-10-23

DCOM协议(精选4篇)

DCOM协议 篇1

1 引言

传统的2层C/S结构数据库应用中,系统的业务规则几乎都要在客户端进行,随着系统规模的不断扩大,企业逻辑日趋复杂,客户端将不堪重负。为了解决2层C/S结构存在的问题,多层结构应用体系应运而生。多层结构的典型是三层结构,其基本思想是把用户界面和企业逻辑分离,在传统的2层C/S结构中放入应用服务器。整体结构如图1。

2 Delphi开发三层C/S数据库应用程序方法

Delphi是一种可视化开发工具,支持面向对象开发方法,它提供数据库引挚BDE、丰富的数据库访问和操作控件以及数据库报表工具,大大提高开发数据库应用系统的效率。使用Delphi开发一般可以分成3个步骤:1)在数据库服务器上建立需要的数据库;2)建立应用服务器;3)建立客户端应用程序。

数据库服务器主要由专门的数据库管理系统实现,使用数据库引擎BDE来建立应用服务器与数据库服务器的关系。客户端和应用服务器端的连接通过DataSnap技术来实现。DataSnap提供了很多种客户端和应用服务器的连接方法,如Scokect,DCOM,Corba等,分别通过SocketConnection、DCOMConnection、WebConnection三个组件来实现TCP/IP、DCOM、HTTP三种传输协议。

3 基于DCOM协议的三层C/S数据库应用程序开发

建立三层结构应用程序,必须先建立应用程序服务器,并运行注册之,再建立客户端。下面通过在客户端建立一个浏览“学生.MDB”数据库中的“学生信息表”的应用程序来说明建立一个基于DCOM协议的三层结构数据库应用程序的开发方法(假设在应用服务器上已经设置好BDE连接,并连接到数据库服务器)。

3.1 建立应用程序服务器

1)新建一个应用程序,在Form1窗体上放置Table1,DataSource1和DataGrid1三个组件,并按照表1设置组件属性,Form1的设计界面如图2。保存窗体和应用程序,窗体单元取名为“ServerUnit”,项目文件取名为“DcomAppServer.dpr”。

2)增加一个远程数据模块,设置它的CoClassName为XSGL,保存取名为“XsglUnit”。并在XsglUnit单元的implementation部分中添加语句:uses ServerUnit;

3)在XSGL模块中加入一个TDataSetProvider组件,设置它的DataSet属性值为Form1.Table1。此时XSGL远程数据模块的设计界面如图3。

4)在Form1的OnCreate事件中编写如下程序:

5)保存并运行,运行界面如图4。系统自动将该应用服务器进行注册,当客户程序运行时,系统自动启用应用服务器。

3.2 建立客户端程序

1)新建一个应用程序,设置Form1的Caption属性为“学生信息表-客户端”。

2)建立数据模块,并添加TDCOMConnection,TClientDataSet,TDataSource和TDBGrid组件,它们的名称分别为DCOMConnection1,ClientDataSet1,DataSource1和DBGrid1。程序设计界面如图5。

3)设置DCOMConnection1,ClientDataSet1,DataSource1和DBGrid1的属性,其属性设置见表2。

4)在Form1的OnCreate事件中添加如下代码:

5)保存并运行,程序运行界面如图6。

4 结束语

在Delphi中可以通过基于DCOM协议、基于TCP/IP协议和基于HTTP协议3中方法来开发三层结构数据库应用程序,分别通过DCOM-Connection、SocketConnection、WebConnection三个组件来实现。其中DCOMConnection组件提供的功能最为完善,配置比较简单,而且执行效率较高,安全性也比较好。

摘要:讨论分析了Delphi中实现三层C/S数据库应用程序的方法,并举例进一步介绍基于DCOM协议来建立三层结构中的应用服务器和客户端应用程序的步骤。

关键词:Delphi,三层C/S数据库,DCOM协议

参考文献

[1]王春红Delphi7程序设计[M].北京:清华大学出版社,2004.

[2]侯太平,童爱红.Delphi数据库编程[M].北京:清华大学出版社,2004.

[3]吴小林,蒋先刚,高艳锦.基于Delphi的多层数据库应用系统连接技术的研究[J].华东交通大学学报,2005,1(22):66-70.

[4]李文生,叶宁.采用Delphi实现三层客户/服务器数据库应用程序[J].计算机工程,2000,7(26):170-173.

使用DCOM开发分布式系统 篇2

随着不断改进和发展,分布式系统逐渐形成了三种具有代表性的主流技术,即CORBA、DCOM( Distributed ComponentObject Model) 和J2EE。DCOM是COM的扩展,为网络环境中不同位置的组件提供了互操作的基础,可以作为构建多层分布式应用系统的基本框架。

1 DCOM 的技术特性

1. 1 DCOM 简介

COM是一个独立于语言的、基于对象的编程规范。这是微软建立的基于二进制标准的模型,定义了组件和客户程序之间互相作用的方式,但COM本身只能在本地生成组件对象。为了能在网络环境中构建多层分布式系统,就需要进一步使用DCOM。DCOM可以实现在网络环境中不同计算机之间组件的通信,而且不论这些组件是运行在局域网、广域网、还是Internet上。对于客户程序而言,组件程序所处的位置是透明的,而且开发者不必编写任何处理远程调用的代码,DCOM处理了底层网络协议的所有细节[1,2],如图1所示。

COM运行库根据调用产生代理和桩,向客户和组件提供服务。当客户进程和COM组件位于不同的机器中时,DCOM用网络协议来代替本地进程之间的通讯。DCOM协议也被称为对象RPC ( Object Remote Procedure Call,简称ORPC) ,是建立在DCE RPC协议的基础上,可用于各种基于组件的分布式系统[3]。ORPC建立了一套面向对象的远程调用规范,指定了如何在网络上进行对象调用、同时也包括了对象的引用应如何表示以及维护。在网络环境下,ORPC仍使用标准的RPC数据包,并附加了专用于DCOM的一些信息,如接口指针标识符、版本信息和扩展信息,再将其作为调用和返回的附加参数进行传送。

1. 2 DCOM 的技术特性

DCOM具有一些技术特性使其可以作为多层分布式系统的基本架构,如位置透明性、语言无关性、优越的执行性能和良好的安全性等。下面将对每一技术特性进行综合的阐释和解析。

首先,在位置透明性方面,开发者在使用DCOM开发分布式系统时,可以使用配置程序预先完成组件配置,这就使得组件的位置完全透明。DCOM不仅无需改变源码,而且也无需重新编译程序,客户程序连接组件和调用组件的方法都是一样的。DCOM的位置透明性极大地简化了将应用组件分布化的任务,使其能够达到最合适的执行效果。例如,某个组件必须位于某台特定的机器上或某个特定的位置,并且该应用有许多小组件,此时即可通过将这些组件配置在同一个局域网上,或者同一台机器上,甚至同一个进程中来减少网络的负载。而当应用是由比较少的大组件构成时,网络负载已不是问题,此时就可将组件配备在速度快的机器上,而无需考虑这些机器的具体位置。

其次,在语言无关性方面,当设计和实现分布式应用系统时,一个常规问题就是为开发一个特定的组件而选择语言以及工具的问题。其中,语言选择就是一个在开发费用、技术支持以及执行性能之间发生的典型折中过程。很多语言都可以用来开发COM组件,具体来说,主要有Java、MicrosoftVisual C + + 、Microsoft Visual Basic、Delphi、Power Builder和Micro Focus COBOL。这就使得DCOM能够直接且透明地改进对现存组件和工具的投资,因此基于DCOM的系统设计和实现即可使开发者的组件无论是现在、或是将来均能实现良好的可重用性。

第三,在执行性能方面,组件和客户程序之间的通信常态都是双向的。微软开发了许多标准接口来支持双向通信[4]。在COM术语中,双向通信是由一种称为连接点的机制来提供支持的,实现连接点需要两个重要的接口: IconnectionP ointC ontainer和Iconnection Point,前者是连接点容器,因其知道源对象支持的所有连接点,即可选择可用的连接点实现第二个接口,这样客户和组件之间就建立了连接。使用连接点机制来建立网络连接减少了数据在网络中的往返开销,在整体效果上就提高了执行性能。

最后,在安全性方面,网络在分布式系统的广泛使用,催生了一些诸如关系到客户间、组件间以及客户和组件之间的安全问题。如果分布式开发平台没有提供安全支持,那么每一个分布式系统就必须设计完成自己的安全机制。DCOM是基于windows系统的,因而可以使用Windows NT提供的安全框架。Windows NT提供了一套稳固的内建式安全模块,可以通过提高操作系统自身安全和网络安全两方面来实施其具体解决,主要表现在提高账号安全性、权限安全性、环境安全性以及加密数据、设置防火墙等方面。

除了以上特性之外,DCOM还具有其它很多特性使其适宜于构造多层分布式系统,如编程控制、良好的容错性、可扩展性等。

2 使用 DCOM 开发分布式系统

COM扩展到DCOM之后,对象的创建过程有所不同。为了标识一个远程对象,仅仅提供一个128位的GUID并不足够,还须提供远程对象所在的机器名,也称为远程服务器名“RemoteS erver Name”。下面介绍了使用DCOM开发高校分布式教务系统的过程。

2. 1 高校分布式教务系统设计

经过需求分析,高校教务系统应包括以下信息: 学生学籍、教师课务、学校通知、网络教学、考试题库、图书馆、学报和邮件。显而易见的是,教务系统的数据量是非常巨大的,其中包括的功能也最为繁琐,学生和教师的并行访问量也不会是个小数目。同时,开发者不可能完全独立开发高校教务系统,必定会用到很多第三方组件或遗留系统,否则开发成本将太过昂贵。基于此,设计者就不能使用集中计算的方式来开发高校教务系统,而应该将其设计为分布式系统。

DNA( Distributed i Nternet Applications) 体系结构是基于Windows平台的应用程序开发模型,代表了创建高分布式应用程序的方法[5]。该体系结构指定了如何使用Windows平台开发强壮的、可伸缩的、分布式的应用程序,其中采用的是一种逻辑上三层的、基于组件的体系结构。具体地,三层分别是表现层、业务逻辑层和数据层。这样就使客户机/服务器和基于WEB的应用程序依托这一公共的应用体系结构而融合为一体。图2就是使用DCOM开发的高校分布式教务系统的结构图。

由图2可以看出,客户端或Web服务器根据用户的请求调用相应功能组件服务器上的功能组件,由此完成计算任务或操作管理数据库中数据。因为设计者将不同用户的请求分散到不同的服务器处理,从而提高了执行性能、扩展性等技术指标。下面给出客户程序调用DCOM组件的两种方法。

2. 2 创建 DCOM 组件

( 1) 方法一

通过DCOM配置工具指定远程服务器名,这种方式使得DCOM组件具有位置透明性。在Windows系统平台上,远程服务器名称、即RemoteS erver Name值将保存在系统注册表HKEY_CLASSES_ROOT APPID键下。如果操作系统发现了一个使用该值的计算机名,就将激活在此远程机器上的组件。如下例即可调用学籍功能组件服务器( Stu JServer) 上的组件对象:

每个App ID可用于多个组件对象,通常就是代表了由多个CLSID共享的进程,该进程中的所有对象均共享同样的配置信息,包括远程服务器名以及安全信息。在DCOM中引入App ID概念可以避免太多的注册表关键字。

在Windows NT中提供了一个DCOM配置工具( dcomconfg. exe) ,开发者可以凭此来配置远程服务器,而不必直接修改注册表。

( 2) 方法二

有些应用要求在程序运行过程中控制要连接的服务器。DCOM允许在创建函数中指定远程服务器名字,这些函数有: CoC reateI nstanceE x、CoG etC lassO bject、CoG etI nstance FromFile、CoG etI nstanceF rome IStorage。这些函数以一个指向可选的COSERVERINFO结构的指针作为参数,该结构可用于指定一个应对COM对象进行实例化的远程服务器,结构中包含成员pwsz Name是用于对组件进行实例化的远程服务器名。而此名字则可使用能在网络中被识别的任一格式,包括IP地址、UNC名以及域名。

现给出各函数的实现功能分别如下: CoC reateI nstance Ex函数可以用指定的类标识符创建一个远程COM对象。CoGetC lass Object函数返回一个对象类的类工厂接口指针,可以创建多个同CLSID的对象。CoG etI nstanceF rom File函数创建一个对象类的新的实例,并用文件进行初始化。CoG et InstanceF rome IStorage函数创建一个对象类的新的实例,并用Storage进行初始化。

下面程序清单中使用CoC reatelnstance Ex函数创建教师课务功能组件服务器( Tec KServer) 上的查询教师上课信息的组件对象。清单内容如下:

3 结束语

DCOM协议 篇3

关键词:OPC,DCOM

1 引言

OPC技术在过程控制领域应用越来越广泛,而且目前OPC基金会的成员已经达到220多家,囊括了世界上所有主要的自动化控制系统、仪器仪表及过程控制系统的公司。同时因为其标准是开放的,更有数不胜数的自主开发的OPC产品。OPC技术的应用早已超越单机模式,走向了分布式、网络化,然而对于一些对DCOM技术和OPC标准不很精通的工程技术人员来说,OPC通信中的DCOM配置往往是件非常头痛的事情,通信过程中的发生诸多问题也时常无从下手。如何在不需要花费时间和精力去研究DCOM、OPC的前提下快速、便捷的实现OPC通信中的DCOM配置,顺利实现OPC通信是许多工程技术人员的难点。本文通过一个简单有效的配置并建立一个稳定可靠的连接来阐述基本的配置过程,并且探讨了OPC通信中经常发生的问题该如何处理。希望能够给从事OPC技术应用的人员一些指导和启示。

2 OPC及DCOM简介

OPC(Object Linking and Embedding(OLE)for Process Control)协议是由OPC基金会制定的一项工业标准,它规范了过程控制和自动化软件与工业现场设备之间的接口。OPC协议中包括了数据访问规范、报警和事件规范、历史数据存取规范、批量过程规范、OPC安全性规范、数据访问标准的测试工具、过程数据的XML规范、数据交换规范、命令规范、公共I/O规范、合成数据规范[1]。

DCOM(Distributed Component Object Model)即分布式组件对象模型,是COM技术的扩展。DCOM通过处理网络协议的下层细节来支持网络中不同计算机上的对象间的通讯。

OP C以OLE/COM/DCOM技术为基础的,使OP C客户通过利用DCOM连接到网络。

3 OPC通信中的DCOM配置方法

配置DCOM通常可以分为以下几个步骤,其先后顺序对配置的成功与否有很大影响。

3.1 禁止Windows防火墙

Windows防火墙能够阻止未授权的访问,通常是防止病毒、蠕虫、恶意或者大意的操作,这个功能在Windows XP SP2或以后的版本缺省状态是打开的。WIN-DOWS防火墙是基于“例外”的,也就是默认情况下,防火墙将阻止外部“未被请求”的连接通过网络,而管理员可以在规则之外设置特定的应用程序或端口来响应外部“未被请求”的连接。防火墙的例外可被归入两种层次的情况,一是应用程序层次,二是端口与协议层次。前者可设置特定的程序来对“未被请求”的连接进行响应,后者可设置特定的TCP或UDP端口来允许相应的通信[2]。为了使OPC程序可以通过DCOM正常工作,必须在这两个层次上都进行设置。关闭防火墙的方式是:在“控制面板”中选择“windows防火墙”,双击图标设置成如图1所示。

3.2 建立可互相识别的账户

为了保证系统能够正确识别所用账户,必须保证OPC客户端和服务器都可以识别用户账户,包括Everyone这个账户。添加用户账户以确保所以计算机有相同的用户名和密码组合,用户名和密码的匹配时OPC访问所必须的,而且一个用户名必须拥有一个密码,否则将不能建立起通信连接。

此外在Windows XP及以后的版本中,Simple File S h a r e选项默认是启用的,它强制使远程的每个用户作为Guest账户来认证,此种安全机制使得OPC客户端与服务器之间不能正常通信。请设置成如图2所示。

3.3 配置系统DCOM

操作系统的DCOM设置直接影响系统OPC的应用,因为OPC客户端没有自己的DCOM设置,所以受缺省设置的影响,需要进行必要的改变:

1、启动DCOM设置程序,点击“开始”->“运行”。输入DCOMCnfg,回车,打开“组件服务”窗口,如图3:

2、进入下一步,如图4。

3、配置默认属性,勾选“在此计算机上启用分布式COM”,默认的身份验证级别为“连接”,默认模拟级别为“标识”,如图5所示:

4、COM安全设置

COM安全注意为了设置正确的允许“访问权限”及“启动和激活权限”,编辑默认值,确保“Everyone”在可以访问的用户组里面,同时开放其“本地”和“远程”的访问权限及“本地启动”、“远程启动”、“本地激活”、“远程激活”的允许权限。关于“激活和访问权限”:启动权限定义了谁可以本地或远程激活(或启动)基于COM的应用程序(比如OPC Server程序);访问权限定义了谁可以对已经启动起来的程序进行访问。默认情况下,WINDOWS XP SP2不允许经由网络的OPC通信。为了使基于DCOM的O P C应用程序可以通过网络工作,用户应该被给予OPC Server和OPC Client的远程激活和访问权限[3]。

3.4 配置SERVER系统DCOM

比较宽泛的DCOM配置完成以后,就需要关注DCOM的特殊配置,在DCOM配置窗口找到所需要配置的组件,将其属性中的“常规-身份验证级别设置”为“默认”,“位置”设置为“在此计算机上运行应用程序”,“安全”均设置成默认值,“终结点”添加“面向连接的TCP/IP”协议,“标识”设置为“交互式用户”,这个账户是当前登录计算机的账户,如果没有账户登录将不能启动OPC Server。

如果所有设置完成,并且OPC服务器与客户端通信正常,为了保证系统的安全性,需要将防火墙从新开启。

4 OPC通信中的问题处理

1、无法浏览远程计算机OPC server

在保证正确的DCOM设置的情况下,无法浏览远程计算机OPC server是经常发生的现象,主要原因可能是OPCEnum没有安装或者被禁止,当然如果DCOM设置没有分配其访问权限也是经常忽略的错误。因为客户端浏览远程计算机的OPCserver,其实际是连接到远程计算机上的OPCEnum的映像,索引出可以访问的OPC Server列表,需要说明的是,可以浏览远程计算机的OPCserver不是OPC通信的必要条件。解决办法是确认OPCEnum已经安装,若未安装则需要从新安装,通常随客户端或服务器软件一同安装,并将其启动类型设置成自动或者手动,自动将随系统启动而启动,手动则在需要时才启动[4]。

2、无法连接远程计算机OPC server

可以浏览但是不能连接也是OPC通信中经常发生的问题,主要的原因大部分在于账户没有建立、简单文件共享没有关闭、身份验证权限没有开发。安装以上配置步骤从新进行正确配置。

3、无法更新数据

客户端无法刷新服务器的数据主要的原因就是安全配置存在问题,可以检查防火墙是否配置正确,身份验证是否正常,访问控制列表是否正常等来分析解决。

5 结束语

虽然OPC通信中的DCOM配置只是整个通信过程的一个部分,但是它的配置成功与否将直接影响着通信的成功与否,同时也没有详细和严格的说明,本文根据以往经验,总结出一个配置DCOM的基本步骤和方法,旨在有效提高配置成功的几率,希望对大家以后的工作有一定的帮助。

参考文献

[1]Using OPC via DCOM with XP SP2 v1.10.pdf.http://www.opcfoundation.org/.

[2]OPC and DCOM Security.http://www.opcconnect.com/dcomcnfg.php

DCOM协议 篇4

随着计算机网络技术和分布式计算的飞速发展, 越来越多的用户希望能够访问和处理多个不同数据源中的数据。这些数据源有以下特点: (1) 异构。 (2) 各数据源独立自治。 (3) 数据源所在地理位置上分散。 (4) 语义冲突。为了解决这个问题, 必须将多个数据源中的数据集成起来, 为用户提供统一和透明的访问, 在此情况下, 出现了多数据库系统。

多数据库系统是多个现存的、自治的、异构的数据库系统的联合。构成多数据库系统的各数据库系统称为局部数据库系统, 它们有自己的局部数据库管理系统。多数据库系统在所有局部数据库系统之上构成全局系统管理层, 提供外部用户接口, 使用户能实现对异构数据库的透明访问。

二、基于COM/DCOM的多数据库系统结构

COM (Component Object Model, 组件对象模型) 是Microsoft建立的基于二进制标准的模型, COM定义了组件和它们的客户之间互相作用的方式。它使得组件和客户端无需任何中介组件就能相互联系, 允许程序员用特定的编程语言来创建模块话的、面向对象的、可升级的应用程序, 并帮助程序员开发与其他组件通信的组件, 而不管他用什么语言或开发工具。

DCOM (Distributed Component Object Model, 分布式组件对象模型) 是COM的进一步扩展, 它支持不同的两台机器上的组件间的通信, 而且不论它们是运行在局域网、广域网、还是Internet上。DCOM为分布式应用提出了良好的规范和应用标准, 具有平台无关性、协议无关性、语言无关性、组件位置独立性和可扩展等优点, 借助它, 应用程序将能够任意进行空间分布。

构成多数据库系统的局部数据库系统是已经存在的, 由于各个局部系统中存储数据的模式之间可能存在冲突, 每个局部数据库系统定义的完整性约束也可能相互矛盾, 所以多数据库系统的主要任务就是隐藏这些局部数据库系统之间的不同, 使多数据库系统的全局用户忽略这些不同, 能够从分布式异构系统中获得有效的数据。多数据库系统中的数据源一般不是存放在同一个地方, 而是分散存储在多个能够相互通信的不同场地数据库系统或文件系统中, 而这些数据库系统又具有高度自治性, 每个局部数据库系统不受其他系统的影响和控制。异构性体现在平台和数据两方面, 环境的异构性意味着每个数据源可能具有独立的平台, 包括不同的系统硬件、不同的操作系统和不同的通信协议等。数据的异构性意味着不同的系统采用不同的数据描述方法。

多数据库系统的体系结构如图所示。

三、系统实现

C#是一种现代的面向对象语言, 是在C++基础上发展起来的一种面向对象的可视化编程语言, 是一个更为灵活、高集成的软件开发环境。它使程序员快速便捷地创建基于Microsoft.NET平台的解决方案。这种框架使C#组件可以方便地转化为X M L网络服务, 从而使任何平台的应用程序都可以通过Internet调用它。在C#中, 每个对象都自动生成为一个C O M对象。开发者不再需要显式的实现IUnknown和其他COM接口, 这些功能都是内置的。类似的, C#可以调用现有的COM对象, 无论它是由什么语言编写的。C#面向对象的卓越设计, 使它成为构建各类组件的理想之选。

数据库访问技术主要有ODBC、OLE DB, DAO, ADO等, 本文采用目前流行的ADO (Active X Data Object) .NET。ADO.NET是ADO的一个跨时代的改进, 它提供了平台互用性和可伸缩的数据访问, 允许和不同类型的数据源及数据库进行交互。由于现在使用的数据源有多种, SQL Server、OLE DB、ODBC、Oracle等, 在编写应用程序的时候就要针对不同的数据源编写不同的接口代码, 这很麻烦, 效率也不高, 针对这一问题ADO.NET的Data Provider (数据提供者) 向应用程序提供了统一的编程界面, 向数据源提供了多种数据源的接口, 这样一来就可使应用程序不需关心什么数据源, 即对数据源进行了屏蔽, 其好处是无论什么样的数据源, 对于应用程序来说只提供一种编程模式即可。ADO.NET主要用于分布式应用程序提供数据访问机制。除了访问来自数据源的数据外, ADO.NET可以修改、添加和删除来自数据源的数据。ADO.NET中包含数据提供者, 他们用于连接到相应的数据源, 并使得用户可以访问或修改数据源中的数据。

1. ADO.NET由Data Provider和数据集Data Set两大组成部分, 有以下六个数据访问对象:

(1) Connection对象:与数据源建立连接。

(2) Command对象:Command的作用主要是把一条SQL语句解释成一个命令对数据库进行相关的操作 (如插入、查询、更新、删除等) 。

(3) Data Reader对象:Data Reader提供一个对数据库进行快速、只读数据流的访问方式。

(4) Data Adapter对象:数据适配器, 在Data Set与数据库之间, 形成了Data Set与数据库的桥梁, 执行从Data Set到数据源的数据读写操作或相反方向上的操作, 充当Data Set与数据源之间的接口, 将数据源中的数据写入Data Set, 或根据Data Set中的数据更新数据源。

(5) Data Set对象:数据集对象, 为来自数据源的数据提供关系视图。

(6) Data View对象:用于显示Data Set中的数据, 用来在观察数据时提供排序和过滤的功能。

通过上述ADO.NET的数据访问对象描述中可得到C#中从数据库查询记录的方法有两种:一种是通过Data Reader对象直接访问;另一种则是通过数据集Dataset和Data Adapter对象访问。

2. 按照以下几个基本步骤来用ADO.NET连接数据库:

(1) 创建和数据库连接的Connection对象。

例如与SQL Server数据库创建连接的部分代码:

sting cs="Data Source=数据库服务器名;user id=登陆名;password=登陆密码;Initial Catalog=数据表名称";//创建连接参数

Sql Connection my Connection=new Sql Connection (cs) ;//创建一个Sql Connection实例

my Connection.Open () ;//打开连接

...

my Connection.Close () ;//断开连接

(2) 配置Data Adapter对象并创建和操作数据集Data Set。

(3) 将数据库中的表添加到Data Set中。

(4) 把数据集Data Set绑定到Data Grid上。

数据在用户终端的显示是通过在页面上调用Data Gid控件, 通过HTML表现出来。

系统中, 利用ADO.NET技术实现了在多个数据库中灵活透明的访问数据源, 并且能够通过程序的方法对这些数据源中的数据进行动态的添加、修改、删除等操作。

四、结束语

本文提出一种基于COM/DCOM的多数据库模型, 可以有效地集成各种分布的、异构的数据库系统, 使之成为一个多数据库系统。系统利用ADO.NET技术实现了对多个数据源的访问, 根据用户所要操作的数据库, 来连接不同的数据库服务器, 并且能够通过编程的方法对这些数据进行动态的添加、修改、删除等更新操作, 具有一定的事务处理能力, 为用户提供一个透明的访问接口。该系统具有可扩展性, 操作性强, 可靠性高等特点, 在企业集成应用系统中将起到重要的作用。

摘要:本文提出一种基于COM/DCOM的多数据库系统模型, 利用COM/DCOM解决系统的分布性和异构性, 该方案可以有效地集成各种分布的、异构的数据库系统。该系统的研制对企业集成系统等的应用起到重要作用。

关键词:COM/DCOM,多数据库,C#,ADO.NET

参考文献

[1]李瑞轩:《多数据库系统原理与技术》.电子工业出版社, 2005年11月

[2]徐成敖等:《c#专业项目实例开发》.中国水利水电出版社, 2007年1月

[3]王家华等:《基于COM+异构数据库访问实现技术》.西安石油学院学报 (自然科学版) , 2003年11月

上一篇:网络治理效率下一篇:园林养护工作