次の方法で共有


プロシージャ呼び出しのエスケープ シーケンス

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

(3 番目の構文は、データ ソースが所有者をサポートしていない場合にのみ有効です)。

owner-name ::= user-defined-name

catalog-name ::= user-defined-name

catalog-separator ::= {implementation-defined}

(カタログ区切り記号は、 を介して返されます。SQLGetInfo 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 ::= }

(プロシージャ パラメーターが空の文字列の場合、プロシージャはそのパラメーターの既定値を使用します)。

データ ソースがプロシージャをサポートしていて、ドライバーが ODBC プロシージャ呼び出し構文をサポートしているかどうかを判断するために、アプリケーションはSQL_PROCEDURES情報の種類で SQLGetInfo を呼び出すことができます。