首页 > 解决方案 > 我们可以从 Excel VBA 连接到 Redshift 吗?

问题描述

请问我们可以通过 Excel VBA 建立 ADO 或与 Redshift 的任何连接吗?至此,我们连接到 SQL Server 并得到作业结果如下;

-- SQL Server 2012/2016 的当前代码

Sub Get_DB_Conncetion(StrDBName As String, StrSQL As String, DestSht As String, DestCell As String)

    On Error GoTo Err_DBConnectOpen

    Dim con As New ADODB.Connection
    Dim conStr As String
    Dim rs As Variant
    Dim cmd As Object

   'Connect String
    conStr = "Provider=Sqloledb;Data Source=" & StrSvr _
    & ";Initial Catalog=" & StrDBName _
    & ";Connect Timeout=10" _
    & ";user id=" & StrID _
    & ";password=" & StrPWD _
    & ""

    Debug.Print Now & ":Connect String:" & conStr

    'Connect to Database
    con.Open conStr

    'Execute SQL
    con.CommandTimeout = 900

    Set rs = con.Execute(StrSQL)
    If Not rs.EOF Then
        With Sheets(DestSht)
            .Activate
            .Range(DestCell).CopyFromRecordset rs
        End With
    End If


    'Close Session
    con.Close
    Set con = Nothing

    Exit Sub

    'Error Handling
Err_DBConnectOpen:

    MsgBox "Can't Connect" & vbCrLf & _
        Err.Description, vbOKOnly, vbCritical

    EXIT_FLG = True

    'Close Connection
    If con.State <> ADODB.adStateClosed Then
        con.Close
    End If
    Set con = Nothing
    Exit Sub

End Sub

在我们确认一切正常之前,我们需要每天检查和比较 SQL Server 和 Redshift 的数据。为了效率和准确性,我们希望尽可能多地抛出检查查询并自动获取结果。

任何建议将再次受到赞赏。谢谢你。

标签: excelvbaamazon-redshiftado

解决方案


推荐阅读