Condividi tramite


Sequenza di escape per chiamata di procedura

ODBC usa sequenze di escape per le chiamate di routine. La sintassi di questa sequenza di escape è la seguente:

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

Nella notazione BNF la sintassi è la seguente:

ODBC-procedure-escape ::=

| ODBC-esc-initiator [?=] call procedure ODBC-esc-terminator

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

procedure-identifier ::= user-defined-name

procedure-name ::= procedure-identifier

| owner-name.identificatore di routine

| catalog-name catalog-separator procedure-identifier

| catalog-name catalog-separator [owner-name].identificatore di routine

La terza sintassi è valida solo se l'origine dati non supporta i proprietari.

owner-name ::= user-defined-name

catalog-name ::= user-defined-name

catalog-separator ::= {implementation-defined}

Il separatore di catalogo viene restituito tramite SQLGetInfo con l'opzione di informazioni SQL_CATALOG_NAME_SEPARATOR.

procedure-parameter-list ::= procedure-parameter

| procedure-parameter, procedure-parameter-list

procedure-parameter ::= valore letterale | dynamic-parameter | empty-string

empty-string ::=

ODBC-esc-initiator ::= {

ODBC-esc-terminator ::= }

Se un parametro di routine è una stringa vuota, la routine usa il valore predefinito per tale parametro.

Per determinare se l'origine dati supporta le procedure e il driver supporta la sintassi di chiamata alla routine ODBC, un'applicazione può chiamare SQLGetInfo con il tipo di informazioni SQL_PROCEDURES.