【问题标题】:postgres connection through VBA通过 VBA 的 postgres 连接
【发布时间】:2019-03-13 08:38:55
【问题描述】:

我有一堆当前连接到我们的“本地”oracle 机器的宏,但我们公司正在进行 AWS 迁移,现在我需要调整我的连接以连接到新数据库。这是我当前连接到 Oracle 的功能:

Function query_DB(dataSource As String, strSQL As String, Optional serverName As String, Optional orcl As String, Optional UN As String, Optional PW As String) As ADODB.Recordset
Dim oConn As New ADODB.Connection, cmd As New ADODB.Command
Dim oRS As New ADODB.Recordset, userName As String, passWord As String
Set query_DB = New ADODB.Recordset

If UN = "" Then
    userName = "test"
Else
    userName = UN
End If
If PW = "" Then
    passWord = "test"
Else
    passWord = PW
End If


strSQL = convOrcl(strSQL, serverName)


    tmpds = Split(dataSource, ",")
    tmporcl = Split(orcl, ".")

    With oConn
        .Provider = "OraOLEDB.Oracle"
        .Properties("Data Source") = UCase(tmporcl(0))
        .Properties("User id") = userName
        .Properties("Password") = passWord
    .Open
    End With


On Error Resume Next
query_DB.Open strSQL, oConn, adOpenDynamic, adLockOptimistic

End Function

只有真正的输入值是上面函数中的 oraclename。

有人可以帮我修改这个函数以便它可以与 postgres 一起使用吗?谢谢。

【问题讨论】:

    标签: vba postgresql amazon-web-services adodb


    【解决方案1】:

    您的项目正在使用对 MS ActiveX 数据对象 (ADODB.*) 的引用。
    Postgresql在标准安装中没有附带ODBC驱动,你需要下载它here

    完成后,我建议您尝试将oConn 对象的ConnectionString 属性设置为that site 上提供的值之一。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-01
      • 2013-11-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-20
      相关资源
      最近更新 更多