过程调用转义序列
ODBC 对过程调用使用转义序列。 此转义序列的语法如下所示:
{[?=]call procedure-name[([parameter][,[parameter]]]...]]}
在 BNF 表示法中,语法如下所示:
ODBC-procedure-escape ::=
| ODBC-esc-initiator [?=] 调用 过程 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
(仅当数据源不支持所有者时,第三个语法才有效。
owner-name ::= user-defined-name
catalog-name ::= user-defined-name
catalog-separator ::= {implementation-defined}
(目录分隔符通过 具有SQL_CATALOG_NAME_SEPARATOR信息选项的 SQLGetInfo 。
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 ::= }
(如果过程参数是空字符串,该过程将使用该参数的默认值。
若要确定数据源是否支持过程,驱动程序是否支持 ODBC 过程调用语法,应用程序可以使用SQL_PROCEDURES信息类型调用 SQLGetInfo 。