Secuencia de Escape de llamada de procedimiento
ODBC usa secuencias de escape para las llamadas a procedimientos. La sintaxis de esta secuencia de escape es la siguiente:
{[?=]call procedure-name[([parameter][,[parameter]]...)]}
En la notación BNF, la sintaxis es la siguiente:
ODBC-procedure-escape ::=
| ODBC-esc-initiator [?=] llamar al procedimiento ODBC-esc-terminator
procedure ::= procedure-name procedure-name | (procedure-parameter-list)
procedure-identifier ::= user-defined-name
procedure-name ::= procedure-identifier
| owner-name.procedure-identifier
| catalog-name catalog-separator procedure-identifier
| catalog-name catalog-separator [owner-name].procedure-identifier
(La tercera sintaxis solo es válida si el origen de datos no admite propietarios).
owner-name ::= user-defined-name
catalog-name ::= user-defined-name
separador de catálogos ::= {implementation-defined}
(El separador de catálogo se devuelve a través de SQLGetInfo con la opción de información SQL_CATALOG_NAME_SEPARATOR).
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 ::= }
(Si un parámetro de procedimiento es una cadena vacía, el procedimiento usa el valor predeterminado para ese parámetro).
Para determinar si el origen de datos admite procedimientos y el controlador admite la sintaxis de invocación de procedimientos ODBC, una aplicación puede llamar a SQLGetInfo con el tipo de información SQL_PROCEDURES.