Ich verwende Access VBA, um eine Verbindung mit SQL Server herzustellen und Tabelleninformationen aus einer angegebenen Datenbank auszugeben. Ich kann eine Verbindung herstellen, und ich kann Tabelleninformationen problemlos ausdrucken. Wenn ich eine IF
Anweisung hinzufüge, geht mein Code einfach und geht und druckt nie das gewünschte Ergebnis aus. Zum Beispiel wird wieder meine Debug.Print
AussageDrucken von Daten aus nur bestimmten Tabellen
Test_1
Test_2
Red
Blue
jedoch, wenn ich die Kommentar- if-Anweisung und Versuch, die Syntax auszuführen, wird kein Fehler geworfen und Zugang friert nur auf mich. Mein gewünschtes Ergebnis ist, die zwei Tabellennamen zu drucken, die Like Test*
sind. Wie soll meine Syntax geändert werden, damit diese Daten gedruckt werden?
Public Sub GetTableNames()
Dim c As ADODB.Connection
Dim r As ADODB.Recordset
Dim f As ADODB.Field
Set c = New ADODB.Connection
With c
.Provider = "sqloledb.1"
With .Properties
.Item("Data Source") = "server"
.Item("Initial Catalog") = "database"
.Item("PassWord") = "password"
.Item("User ID") = "userid"
End With
.Open
Set r = .OpenSchema(adSchemaTables,Array(Empty, Empty, Empty, "TABLE"))
With r
While Not .EOF
'IF (.Fields("Table_Name") LIKE "Test*") THEN
Debug.Print .Fields("TABLE_NAME"), .Fields("TABLE_TYPE")
.MoveNext
'END IF
Wend
End With
End With
End Sub