Hi zusammen,
ich habe in meinem Programm innerhalb einer Methode eine Datenbank verbindung hergestellt. Wenn ich jetzt über eine andere Methode ein weiteres SQL abfragen möchte, wie soll ich das machen?
Kann man vielleicht eine Fuktion schreiben die dann immer das SQL ausführt (function (sql_string)) ?
Oder muss ich in jeder Methode wieder eine neue Verbindung herstellen?
Sub Datenbank_verbindung()
Call Variablen
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim sql As String
Dim icols As Integer
Let icols = 0
sql = "SELECT Top 10 * FROM tb_1 "
cnn.ConnectionString = "Driver={Teradata Database ODBC Driver 16.20};DBCName=db_name;Database=db;CharSet=UTF8;Uid=user;Pwd=password;"
cnn.Open
rs.Open sql, cnn
Debug.Print "Verbindung Hergestellt"
With ThisWorkbook.Worksheets("tabelle1").Activate
ActiveSheet.Range("A:A").CopyFromRecordset rs
For icols = 0 To rs.Fields.count - 1
ActiveSheet.Cells(1, icols + 1).Value = rs.Fields(icols).Name
Next
ActiveSheet.Range(ActiveSheet.Cells(1, 1), _
ActiveSheet.Cells(1, rs.Fields.count)).Font.Bold = True
ActiveSheet.Range("A2").CopyFromRecordset rs
ActiveSheet.Columns.AutoFit
End With
rs.Close
cnn.Close
Debug.Print "Verbindung Geschlossen"
End Sub
|