Prozeduraufruf-Escapesequenz
ODBC verwendet Escapesequenzen für Prozeduraufrufe. Die Syntax dieser Escapesequenz lautet wie folgt:
{[?=]call procedure-name[([parameter][,[parameter]]...)]}
In der BNF-Schreibweise lautet die Syntax wie folgt:
ODBC-procedure-escape ::=
| ODBC-esc-initiator [?=] Aufrufen der Prozedur ODBC-esc-terminator
procedure ::= procedure-name procedure-name | (procedure-parameter-list)
procedure-identifier ::= benutzerdefinierter Name
procedure-name ::= procedure-identifier
| Besitzername.Prozedurbezeichner
| Katalogname-Katalogtrenn-Prozedurbezeichner
| Katalognamenkatalogtrennzeichen [Besitzername].Prozedurbezeichner
(Die dritte Syntax ist nur gültig, wenn die Datenquelle keine Besitzer unterstützt.)
owner-name ::= user-defined-name
Katalogname ::= benutzerdefinierter Name
Katalogtrennzeichen ::= {implementation-defined}
(Das Katalogtrennzeichen wird durch SQLGetInfo mit der Option SQL_CATALOG_NAME_SEPARATOR Informationen.)
procedure-parameter-list ::= procedure-parameter
| procedure-parameter, procedure-parameter-list
procedure-parameter ::= dynamic-parameter | literal | empty-string
empty-string ::=
ODBC-esc-initiator ::= {
ODBC-esc-terminator ::= }
(Wenn ein Prozedurparameter eine leere Zeichenfolge ist, verwendet die Prozedur den Standardwert für diesen Parameter.)
Um festzustellen, ob die Datenquelle Prozeduren unterstützt und der Treiber die ODBC-Prozeduraufrufssyntax unterstützt, kann eine Anwendung SQLGetInfo mit dem SQL_PROCEDURES Informationstyp aufrufen.