论文摘要:针对Visual Basic端远程访问Oracle数据库的问题,本文介绍了客户端无需安装Oracle客户软件的连接方式,简化了Visual Basic客户端的复杂性,提高了访问效率。本文介绍了ADO技术,设计了基于ADO技术建立VB和Oracle数据库的连接方法,并且根据实例有效的解决了无客户端访问Oracle数据库的问题。
论文关键词:数据库,无客户端
中图法分类号:TP311
引言
当今社会已经进入信息时代,作为信息管理的主要工具的数据库已经成为举足轻重的角色。无论是企业、组织的管理还是电子商务或电子政务等应用系统的管理,都需要数据库的支持。Oracle数据库是一种大型数据库系统,能在所有主流操作系统平台(包括Windows、Unix、Linux等等)上运行;完全支持所有的工业标准,采用完全开放策略,可以使客户选择最适合的解决方案,提供高可用性和高伸缩性的解决方案;在安全方面,Oracle已是获得了最高认证级别的ISO标准认证;它还是多层次网络计算,支持多种工业标准,可以用ODBC、JDBC、OLEDB等与网络客户连接。Oracle数据库是目前最流行的关系数据库管理系统,被越来越多的用户在信息系统管理、企业数据管理、Internet、电子商务网站等领域作为应用数据的后台处理系统。
收稿日期:
项目基金:国家博士后基金资助项目(20100481013)
VisualBasic具有强大的数据库管理功能,利用数据控件和数据库管理窗口,可以直接建立或处理MicrosoftAccess格式的数据库,并提供了强大的数据存储和检索功能。同时,VisualBasic还能直接编辑和访问其他外部数据库,如Oracle,dBASE,FoxPro,Paradox等,这些数据库格式都可以用VisualBasic编辑和处理。可完美地实现Client/Server结构,使程序中调用数据变得轻松易行。在客户端采用VisualBasic设计软件连接Oracle数据库时,需要在用户的机器上安装一个Oracle数据库客户端,这无疑会增加用户不少工作量,降低软件的友好性。为了解决这个问题,本文以Oracle为后台数据库,介绍基于VisualBasic无客户端对远程Oracle数据库的访问。
1使用ADO技术连接Oracle数据库
在VisualBasic中访问Oracle数据库的方法有以下四种方法:DAO,ADO,OracleDataControl,oo4o。本文重点介绍ADO的方法,实现数据库的访问。
1.1ADO技术简介
ADO(ActiveXDataObject)是Microsoft的数据库应用程序开发的新接口,是建立在OLEDB之上的高级数据库访问技术。
作为Oracle用户,既可以通过ODBC的OLE-DB提供者访问Oracle,也可以通过与VisualBasic6.0相配的数据源执行同样的操作。软件层中有关上述操作的不同路径如图1(Fig.1)所示。
 
图1ADO所使用的软件层
Fig.1ArchitectureofADO
ADO技术具有易于使用、高速访问数据源、可以访问不同数据源、程序占用的内存少的特点。
1.2ADO对象模型
ADO对象模型规定了一组可编程的分层对象集合,在VB应用程序中通过创建这组对象集合来连接数据库并实现数据库的各种操作。ADO数据模型主要有Connection、Command、Recordset、Field、Parameter、Property和Error7个对象组成。此外还有四个集合对象:Fields、Properties、Parameters、和Errors集合,如图2(Fig.2)所示。
     

图2ADO对象结构
Fig.2ObjectsofADO
1)Connection对象
Connection对象用于连接数据源。在数据库应用程序设计中,用户所做的第一步工作是连接数据库,也就是说必须先用Connection对象建立数据源的连接,然后再进行其他的数据操作。
在ADO数据库应用程序设计中,可以用Connection对象建立应用程序与常用的数据库的连接。下面的是连接Oracle数据库的格式:
DimconnAsNewADODB.Connection
Conn.ConnectionString=”Provider=OraPLEDB.oracle;”&_
“DataSource=EmpDB”&_
“UserId=sa;Password=sa”
Conn.Open
如果是客户机/服务器数据库系统,则该对象可以等价于到服务器的实际网络连接。
2)Recordset对象
Recordset对象用于表示基本表或命令执行结果的记录集,任何时候Recordset对象都只将集合中的单个记录作为当前记录应用。在使用ADO对象时,几乎全部使用Recordset对象均由记录和字段组成。
3)Command对象
Command对象用于定义要对数据源执行的特定命令。用户可以通过Command对象查询数据库并返回Recordset对象中的记录,以便执行大量操作或对数据库结构进行操作。 1/3 1 2 3 下一页 尾页 |