Excel VBA 连接Oracle数据库

VBA宏下载:Oracle2Excel 导出字典


Sub linkOracle()

    Dim strConn As String  '连接字符串
    
    Dim dbConn As Object  '连接对象
    Dim resSet As Object  '查询结果集
    
    Dim db_sid, db_user, db_pass As String 'sid,用户名,密码
    
    '设置自己的链接数据
    db_sid = "MYORCL"
    db_user = "scott"
    db_pass = "tiger"
    
    '创建对象
    Set dbConn = CreateObject("ADODB.Connection")
    Set resSet = CreateObject("ADODB.Recordset")
    '拼接链接字符串 下面两个选一个 
    strConn = "Provider=OraOLEDB.Oracle.1; user id=" & db_user & "; password=" & db_pass & "; data source = " & db_sid & "; Persist Security Info=True"
    strConn = "Provider=MSDAORA.1; user id=" & db_user & "; password=" & db_pass & "; data source = " & db_sid & "; Persist Security Info=True"
       
 
    '-----打开数据库----
    dbConn.Open strConn
    
    '执行查询
    Set resSet = dbConn.Execute("select * from emp")
    
    '打印表头
    For j = 0 To resSet.Fields.COUNT - 1
      Cells(1, j + 1) = resSet.Fields(j).Name
    Next
    
    '粘贴结果
    Range("A2").CopyFromRecordset resSet
    
    '-----关闭连接----
    dbConn.Close '关闭数据库
    
End Sub


  • 4
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在VBA连接Oracle数据库,需要进行以下步骤: 1. 安装Oracle客户端软件 首先需要安装Oracle客户端软件。如果Oracle数据库VBA代码运行在同一台计算机上,可以安装Oracle Instant Client。如果Oracle数据库在另一台计算机上,则需要安装Oracle客户端软件。 2. 引用ADO库 在VBA代码中,需要引用Microsoft ActiveX Data Objects(ADO)库。打开VBA编辑器,选择“工具”菜单,然后选择“引用”。在引用对话框中,找到并勾选“Microsoft ActiveX Data Objects x.x Library”。 3. 编写连接代码 在VBA代码中,可以使用ADO连接Oracle数据库。以下是一个简单的连接示例: ``` Dim conn As New ADODB.Connection conn.ConnectionString = "Provider=OraOLEDB.Oracle;Data Source=ORCL;User ID=myUsername;Password=myPassword;" conn.Open ``` 其中,“Data Source”参数指定要连接Oracle实例名称,“User ID”和“Password”参数指定连接Oracle数据库的用户名和密码。 4. 执行SQL语句 连接成功后,可以使用ADO对象执行SQL语句。以下是一个简单的示例: ``` Dim rs As New ADODB.Recordset rs.Open "SELECT * FROM myTable", conn Do While Not rs.EOF Debug.Print rs("myField") rs.MoveNext Loop rs.Close ``` 以上示例中,“myTable”和“myField”是Oracle数据库中的表和字段名称。使用Recordset对象执行查询,然后使用循环遍历结果集并打印每个行的“myField”值。最后关闭Recordset对象。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值