Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für: Access 2013, Office 2013
Definiert einen Namen und optionale Parameter für eine Abfrage.
Hinweis
Die PROCEDURE-Klausel wurde durch die PROCEDURE-Anweisung abgelöst. Zwar wird die PROCEDURE-Klausel noch unterstützt, doch die PROCEDURE-Anweisung stellt eine Übermenge der Funktionen der PROCEDURE-Klausel bereit und wird als Syntax empfohlen.
Syntax
PROCEDURE Name [Param1 Datentyp[, Param2 Datentyp[, …]]
Die PROCEDURE-Klausel enthält die folgenden Bestandteile:
| Teil | Beschreibung |
|---|---|
| name | Der Name der Prozedur. Bei der Namensgebung müssen die Standardbenennungsregeln beachtet werden. |
| Parameter1, Parameter2 | Ein oder mehrere Feldnamen oder Parameter. Zum Beispiel:PROCEDURE Sales_By_Country [Beginning Date] DateTime, [Ending Date] DateTime;Weitere Informationen zu Parametern finden Sie unter Parameter. |
| Datentyp | Einer der wichtigsten Microsoft Access SQL-Datentypen oder eines der Synonyme. |
Hinweise
Eine SQL-Prozedur besteht aus einer PROCEDURE-Klausel (die den Namen der Prozedur angibt), einer optionalen Liste mit Parameterdefinitionen und einer einzelnen SQL-Anweisung. Beispielsweise könnte die Prozedur Get_Part_Number eine Abfrage ausführen, die eine bestimmte Artikelnummer abruft.
Hinweis
Beispiel
In diesem Beispiel wird die CategoryList-Abfrage benannt und die EnumFields-Prozedur aufgerufen, die im Beispiel für die SELECT-Anweisung enthalten ist.
Sub ProcedureX()
Dim dbs As Database, rst As Recordset
Dim qdf As QueryDef, strSql As String
' Modify this line to include the path to Northwind
' on your computer.
Set dbs = OpenDatabase("Northwind.mdb")
strSql = "PROCEDURE CategoryList; " _
& "SELECT DISTINCTROW CategoryName, " _
& "CategoryID FROM Categories " _
& "ORDER BY CategoryName;"
' Create a named QueryDef based on the SQL
' statement.
Set qdf = dbs.CreateQueryDef("NewQry", strSql)
' Create a temporary snapshot-type Recordset.
Set rst = qdf.OpenRecordset(dbOpenSnapshot)
' Populate the Recordset.
rst.MoveLast
' Call EnumFields to print the contents of the
' Recordset. Pass the Recordset object and desired
' field width.
EnumFields rst, 15
' Delete the QueryDef because this is a
' demonstration.
dbs.QueryDefs.Delete "NewQry"
dbs.Close
End Sub