프로시저 호출 이스케이프 시퀀스
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 ::= 동적 매개 변수 | 리터럴 | 빈 문자열
empty-string ::=
ODBC-esc-initiator ::= {
ODBC-esc-terminator ::= }
프로시저 매개 변수가 빈 문자열인 경우 프로시저는 해당 매개 변수의 기본값을 사용합니다.
데이터 원본이 프로시저를 지원하고 드라이버가 ODBC 프로시저 호출 구문을 지원하는지 여부를 확인하기 위해 애플리케이션은 SQL_PROCEDURES 정보 형식으로 SQLGetInfo를 호출할 수 있습니다.