Вызов хранимых процедур (ODBC)

Когда инструкция SQL вызывает хранимую процедуру при помощи escape-последовательности ESCAPE ODBC CALL, драйвер Microsoft® SQL Server™ отправляет процедуру на SQL Server при помощи механизма удаленного вызова хранимой процедуры. Запросы RPC пропускают большую часть синтаксической проверки и обработки параметров инструкции в SQL Server; они быстрее, чем инструкция Transact-SQL EXECUTE.

Описание образца приложения, который демонстрирует эту функцию, см. в разделе Обработка кодов возврата и выходных параметров (ODBC).

Выполнение процедуры с помощью RPC

  1. Сконструируйте инструкцию SQL, использующую escape-последовательность ODBC CALL. В этой инструкции для каждого входного, входного-выходного и выходного параметров, а также для возвращаемого процедурой значения (при его наличии) используются маркеры параметров.

    {? = CALL procname (?,?)}
    
  2. Вызывайте SQLBindParameter каждого входного, входного-выходного и выходного параметров, а также для возвращаемого процедурой значения (при его наличии).

  3. Выполните инструкцию с SQLExecDirect.

ПримечаниеПримечание

Если приложение отправляет процедуру при помощи синтаксиса Transact-SQL EXECUTE (в отличие от escape-последовательности ODBC CALL), драйвер SQL Server ODBC передает этот вызов процедуры SQL Server в виде инструкции SQL, а не RPC. Кроме того, при использовании инструкции Transact-SQL EXECUTE выходные параметры не возвращаются.

См. также

Основные понятия

Создание пакетной обработки вызовов хранимых процедур

Выполнение хранимых процедур

Вызов хранимой процедуры

Процедуры

Другие ресурсы

Инструкции по выполнению хранимых процедур (ODBC)