欢迎来到论文网! 识人者智,自知者明,通过生日认识自己! 生日公历:
网站地图 | Tags标签 | RSS
论文网 论文网8200余万篇毕业论文、各种论文格式和论文范文以及9千多种期刊杂志的论文征稿及论文投稿信息,是论文写作、论文投稿和论文发表的论文参考网站,也是科研人员论文检测和发表论文的理想平台。lunwenf@yeah.net。
您当前的位置:首页 > 科技论文 > 计算机论文

基于Visual Basic访问Oracle数据库方法的改进

时间:2015-09-12  作者:金 艳徐 涛
该控件通过Microsoft ActiveX Data Object(ADO)技术,快速地创建一个到数据库的连接。ADO控件可以连接任何符合OLE DB范围的数据源或是一个ODBC数据库[3]。

 

ADO不是内部控件,在使用ADO控件之前,必须先将该控件加载到工具箱中。选择“工程”“部件”,在列表中选择“Microsoft ADO Data Control 6.0(OLE DB)”选项,单机“确定”按钮,加载ADO控件到工具箱[4]。

这种方法简单,用户只需写较少的代码,甚至不写一行代码,可以实现对数据库的访问。其缺点是效率较低,用户对程序的控制弱,不能充分发挥ADO强大功能。

2.2 直接使用ADO对象

这种方法可以非常灵活地控制程序的细节,而且效率、性能很高,可以充分发挥ADO的特性。通过对 ADO对象模型中的主要对象进行简单编程,达到快捷灵活地访问各种类型数据库的目的。因而本文采用此方法进行Oracle数据库访问[5]。

3 Visual Basic环境下无客户端访问Oracle数据库实现

3.1 创建新工程及引用ADO数据对象

启动Visual Basic 6.0集成开发环境后,在弹出的“新建工程”对话框中选择“标准EXE”,单机“确定”按钮,创建一个新工程[4]。

Visual Basic 6.0中绑定了ADO对象,使用ADO对象之前应该通过“工程”“引用”命令,选择“Microsoft ActiveX Data Object 2.5 Library”列项表,然后单机“确定”按钮,将ADO对象添加到工程中[4]。

在Form1窗体上添加一个Data Grid控件,单机菜单中的“工程”“部件”选项,然后选取“Microsoft Data Grid Control 6.0 SP6(OLEDB)”列表项,单机“确定”按钮。此时Data Grid控件出现在工具箱[4]。

3.2 Visual Basic使用ADO远程访问Oracle数据库

下面代码显示了基于VB环境下利用ADO技术无客户端对Oracle数据库远程访问的实例。

Private Sub Form_Load()

Dim PathStr As String, oraclePath As String oraclePath = Replace(App.Path, '/', '')

If Right(oraclePath, 1) <> '' Then oraclePath = oraclePath & '' oraclePath = oraclePath & 'OracleInstantClient' '组件存放的路径

PathStr = Environ('path') '获得老的Path环境变量的值

If Right(PathStr, 1) <> ';' Then PathStr = PathStr & ';'

If InStr(UCase(';' & PathStr), UCase(';' & oraclePath & ';')) = 0 Then PathStr = PathStr & oraclePath & ';'

SetEnvironmentVariable 'PATH', PathStr '设置dll访问的环境变量

SetEnvironmentVariable 'NLS_LANG', 'SIMPLIFIED CHINESE_CHINA.ZHS16GBK'

'设置环境变量,防止中文乱码

SetEnvironmentVariable 'TNS_ADMIN', oraclePath '这是指 tnsnames.ora 文件所在路径

Set conn = New ADODB.Connection '创建连接对象

conn.Open'Provider=MSDAORA.1;UserID=system;Password=sa;DataSource=''(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=202.198.128.100)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=Vibratio)))'';Persist Security Info=True;' '基于Microsoft Oracle的连接

Set conn As ADODB.Connection '声明连接对象

Set rs = New ADODB.Recordset '创建记录对象

rs.Open 'select * from Test', conn '打开表格

Set DataGrid1.DataSource = rs '将表中的数据在Data Grid控件中显示

End Sub

其中环境变量的设置要在客户端上完成。MSDAORA.1是Microsoft OLEDB provider for Oracle的连接,也可运用其他的方式,UserID=system Password=sa分别是服务端Oracle数据库的用户名和密码,HOST=202.198.128.100是服务器端的IP地址,PORT=1521是默认的端口号,SERVICE_NAME=Vibratio是服务器数据库服务的名字,rs.Open 'select * from Test', conn中的Test是本例Oracle数据库名为VIBRATION的数据库中建立的表。

3.3 添加客户端库文件及环境变量

1、由于无需安装Oracle数据库的客户端,只需要需要在客户端的计算机上添加动态连接库文件。在Oracle下载一个Instant Client Package的软件,即

instantclient-basic-win32-10.1.0.5-20060419中的文件解压到指定位置,本文解压的位置为 C:OracleInstantClient 。classes12.jar、oci.dll、ocijdbc10.dll、ociw32.dll、ojdbc14.jar、orannzsbb10.dll、oraocci10.dll、oraociei10.dll以上8个文件为instantclient-basic-win32-10.1.0.5-20060419中的库文件,然后再在作为客户端的计算机上的C:OracleInstantClient建立下一级文件夹 etworkadmin,在其中添加远程监听文件tnsnames.ora,该程序可以Oracle服务器的安装目录Oracleproduct.1.0Db_1admin文件夹中找到,其内容如下:

VIBRATIO =

(DESCRIPTION =

(ADDR

查看相关论文专题
加入收藏  打印本文
上一篇论文:具有认知诊断功能的计算机自适应测验的选题方法比较
下一篇论文:利用Flash做好《工程制图》课的辅助教学
科技论文分类
科技小论文 数学建模论文
数学论文 节能减排论文
数学小论文 低碳生活论文
物理论文 建筑工程论文
网站设计论文 农业论文
图书情报 环境保护论文
计算机论文 化学论文
机电一体化论文 生物论文
网络安全论文 机械论文
水利论文 地质论文
交通论文
相关计算机论文
最新计算机论文
读者推荐的计算机论文