Excel VBA连接并操作Oracle

来源:asp之家 时间:2009-08-08 22:58:00 

以下是通过Excel 的VBA连接Oracle并操作Oracle相关数据的示例

Excel 通过VBA连接数据库需要安装相应的Oracle客户端工具并引用ADO的相关组件,引用ADO相关组件可按如下步骤操作:
  1、打开VBA编辑器,在菜单中点选“工具”,“引用”;
  2、确保“Microsoft ActiviteX Data Objects 2.8 Library”和“Microsoft ActiviteX Data ObjectS Recordset 2.8 Library”被勾选上。
  建立连接过程,代码如下:

代码如下:


Public Sub ConOra()
On Error GoTo ErrMsg:
Dim ConnDB As ADODB.Connection
Set ConnDB = New ADODB.Connection
Dim ConnStr As String
Dim DBRst As ADODB.Recordset
Set DBRst = New ADODB.Recordset
Dim SQLRst As String
Dim OraOpen As Boolean
OraOpen = False
OraID="Orcl" 'Oracle数据库的相关配置
OraUsr="user"
OraPwd="password"
ConnStr = "Provider = MSDAORA.1;Password=" & OraPwd & _
";User ID=" & OraUsr & _
";Data Source=" & OraID & _
";Persist Security Info=True"
ConnDB.CursorLocation = adUseServer
ConnDB.Open ConnStr
OraOpen = True '成功执行后,数据库即被打开
'MsgBox "Connect to the oracle database Successful!", vbInformation, "Connect Successful"
DBRst.ActiveConnection = ConnDB
DBRst.CursorLocation = adUseServer
DBRst.LockType = adLockBatchOptimistic
SQLRst = "Select * From TstTab"
DBRst.Open SQLRst, ConnDB, adOpenStatic, adLockBatchOptimistic
DBRst.MoveFirst
Exit Function
ErrMsg:
OraOpen = False
MsgBox "Connect to the oracle database fail ,please check!", vbCritical, "Connect fail!"
End Function
Public Sub ConOra()
On Error GoTo ErrMsg:
Dim ConnDB As ADODB.Connection
Set ConnDB = New ADODB.Connection
Dim ConnStr As String
Dim DBRst As ADODB.Recordset
Set DBRst = New ADODB.Recordset
Dim SQLRst As String
Dim OraOpen As Boolean
OraOpen = False
OraID="Orcl" 'Oracle数据库的相关配置
OraUsr="user"
OraPwd="password"
ConnStr = "Provider = MSDAORA.1;Password=" & OraPwd & _
";User ID=" & OraUsr & _
";Data Source=" & OraID & _
";Persist Security Info=True"
ConnDB.CursorLocation = adUseServer
ConnDB.Open ConnStr
OraOpen = True '成功执行后,数据库即被打开
'MsgBox "Connect to the oracle database Successful!", vbInformation, "Connect Successful"
DBRst.ActiveConnection = ConnDB
DBRst.CursorLocation = adUseServer
DBRst.LockType = adLockBatchOptimistic
SQLRst = "Select * From TstTab"
DBRst.Open SQLRst, ConnDB, adOpenStatic, adLockBatchOptimistic
DBRst.MoveFirst
Exit Function
ErrMsg:
OraOpen = False
MsgBox "Connect to the oracle database fail ,please check!", vbCritical, "Connect fail!"
End Function


可以根据需要调整SQL语句,获取相关数据,并输出到Excel完成数据处理
上述代码在Windows XP SP3/2003 SP2 + Office2003下测试通过.

标签:Excel,VBA,Oracle
0
投稿

猜你喜欢

  • 推荐9款很棒的网页绘制图表JavaScript框架脚本

    2009-04-15 12:13:00
  • 一个不错的js+css二级分类菜单代码

    2007-12-28 21:22:00
  • 跨浏览器使用剪贴板

    2008-09-27 13:26:00
  • eWebEditor不支持IE8/IE7的解决方法

    2010-02-28 10:27:00
  • aspjpeg组件asp代码实例使用详解

    2008-12-14 10:33:00
  • 学习ASP的理由 分析小结

    2011-02-26 10:54:00
  • 如何修改MySQL密码(方法大总结)

    2009-11-18 11:07:00
  • php ZipArchive解压缩实现后台管理升级问题详解

    2023-05-25 11:58:10
  • Oracle也有注入漏洞

    2010-07-23 13:03:00
  • Access命令行参数

    2007-08-23 15:35:00
  • 让MYSQL彻底支持中文

    2008-12-24 16:23:00
  • asp日期函数运用--生成简单的日历

    2008-08-15 13:47:00
  • 判断字段是否被更新 新旧数据写入Audit Log表中

    2012-01-29 17:56:33
  • asp如何远程注册DLL

    2010-06-16 09:58:00
  • 基于关系型数据库引擎的\\XML\\索引技术

    2008-09-05 17:13:00
  • asp分段插入数据库

    2010-07-02 13:13:00
  • Javascript: 为<input>设置readOnly属性问题,希望大家以后要小心

    2009-07-23 20:24:00
  • 无忧贴子管理器(ListView组件)

    2009-01-02 17:56:00
  • 漫谈前端开发中的团队合作

    2009-02-05 21:02:00
  • YUI3设计中的激进和妥协

    2010-01-17 09:59:00
  • asp之家 网络编程 m.aspxhome.com