Partager via


Séquence d’échappement d’appel de procédure

ODBC utilise des séquences d’échappement pour les appels de procédure. La syntaxe de cette séquence d’échappement est la suivante :

{[?=]callprocedure-name[([parameter][,[parameter]]... )]}

Dans la notation BNF, la syntaxe est la suivante :

ODBC-procedure-escape ::=

| Procédure d’appel ODBC-esc-initiator [?=] ODBC-esc-terminator

procedure ::= procedure-name | procedure-name (procedure-parameter-list)

procedure-identifier ::= user-defined-name

nom_procédure ::= procedure-identifier

| nom-propriétaire. procedure-identifier

| catalog-name catalog-separatorprocedure-identifier

| catalog-name catalog-separator [owner-name]. procedure-identifier

(La troisième syntaxe est valide uniquement si la source de données ne prend pas en charge les propriétaires.)

owner-name ::= user-defined-name

catalog-name ::= user-defined-name

catalog-separator ::= {implementation-defined}

(Le séparateur de catalogue est retourné via SQLGetInfo avec l’option d’informations SQL_CATALOG_NAME_SEPARATOR.)

procedure-parameter-list ::= procedure-parameter

| procedure-parameter, procedure-parameter-list

procedure-parameter ::= dynamic-parameter | littéralempty-string |

empty-string ::=

ODBC-esc-initiator ::= {

ODBC-esc-terminator ::= }

(Si un paramètre de procédure est une chaîne vide, la procédure utilise la valeur par défaut pour ce paramètre.)

Pour déterminer si la source de données prend en charge les procédures et si le pilote prend en charge la syntaxe d’appel de procédure ODBC, une application peut appeler SQLGetInfo avec le type d’informations SQL_PROCEDURES.