Skip to content

Latest commit

 

History

History
62 lines (39 loc) · 2.08 KB

procedure-call-escape-sequence.md

File metadata and controls

62 lines (39 loc) · 2.08 KB
title description author ms.author ms.date ms.service ms.subservice ms.topic helpviewer_keywords
Procedure Call Escape Sequence
Procedure Call Escape Sequence
David-Engel
davidengel
01/19/2017
sql
connectivity
reference
escape sequences [ODBC], procedure call
procedure call escape sequence [ODBC]
ODBC escape sequences [ODBC], procedure call

Procedure Call Escape Sequence

ODBC uses escape sequences for procedure calls. The syntax of this escape sequence is as follows:

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

In BNF notation, the syntax is as follows:

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.procedure-identifier

| catalog-name catalog-separator procedure-identifier

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

(The third syntax is valid only if the data source does not support owners.)

owner-name ::= user-defined-name

catalog-name ::= user-defined-name

catalog-separator ::= {implementation-defined}

(The catalog separator is returned through SQLGetInfo with the SQL_CATALOG_NAME_SEPARATOR information option.)

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 ::= }

(If a procedure parameter is an empty string, the procedure uses the default value for that parameter.)

To determine whether the data source supports procedures and the driver supports the ODBC procedure invocation syntax, an application can call SQLGetInfo with the SQL_PROCEDURES information type.