Wie erkennen, wenn eine Abfrage vorhanden ist

March 6

Zu sagen, wenn eine Microsoft Access-Datenbank-Abfrage aus der Visual Basic-Anwendung vorhanden ist machen Ihre Anwendung robuster Aufforderung keinen Fehler, wenn die Abfrage nicht vorhanden ist. In VB können Sie die Funktion "CreateObject" eine Top-Level Objektvariable erstellen, die Zugriff darstellt. Sie können eine Access-Datenbank programmgesteuert mithilfe von das Objekt und die Suche nach jedem Element in der Datenbank, z. B. Tabellen oder Abfragen öffnen.

Anweisungen

1 Starten Sie Microsoft Visual Studio. Klicken Sie auf "Neues Projekt" im linken Bereich Ihres Bildschirms, und erweitern Sie "Visual Basic" unter "Installierte Vorlagen". Klicken Sie auf "Windows", und doppelklicken Sie auf "Console Application" aus der Mitte des Fensters Dialogfeld erstellen ein neues Konsolenprojekt.

2 Fügen Sie den folgenden Code zum Deklarieren der Access-Object-Variable und die boolesche Variable, die Sie verwenden werden, zu überprüfen, ob die Abfrage vorhanden ist:

Dim AccessAppObj As Object

Dim qryResult As Boolean3

Erstellen Sie das Objekt, und auch öffnen Sie die Access-Datenbank:

accessAppObj = CreateObject("Access.Application")

accessAppObj.OpenCurrentDatabase("C:\Northwind 2007.accdb", False)4

Suchen Sie nach der Abfrage "Rechnungsdaten" in der Northwind-Datenbank. Der folgende Code gibt zurück, "True", wenn die Abfrage vorhanden ist oder "False", wenn es nicht vorhanden ist:

On Error Resume Next

Dim s As String

s = accessAppObj.CurrentDb.QueryDefs("Invoice Data").Name

qryResult = (s <> "")5

Überprüfen Sie das Ergebnis und eine Meldung durch das Konsole-Fenster:

If (qryResult) Then

Console.Write("Query does exist")

Else

Console.Write("Query doesn't exist")

End If6

Freigabe-Objekte aus dem Speicher:

accessAppObj.CloseCurrentDatabase()

accessAppObj.Quit()

accessAppObj = Nothing

Console.ReadLine()7

Mit "F5" um das Programm auszuführen.