Процедуры

Применимо к: SQL Server Azure SQL DatabaseУправляемый экземпляр SQL AzureAzure Synapse AnalyticsAnalytics Platform System (PDW)

Хранимая процедура — это предварительно скомпилируемый исполняемый объект, содержащий одну или несколько инструкций Transact-SQL. Хранимые процедуры могут иметь входные и выходные параметры, а также возвращать целочисленный код возврата. Приложение может перечислять существующие хранимые процедуры с помощью функций для работы с каталогами.

Приложения ODBC, предназначенные для SQL Server, должны использовать только прямое выполнение для вызова хранимой процедуры. При подключении к более ранним версиям SQL Server драйвер ODBC SQL Server Native Client реализует функцию SQLPrepare путем создания временной хранимой процедуры, которая затем вызывается в SQLExecute. Это добавляет дополнительные расходы, чтобы SQLPrepare создавал временную хранимую процедуру, которая вызывает только целевую хранимую процедуру, а не непосредственно выполняет целевую хранимую процедуру. Даже при подключении к экземпляру SQL Server подготовка вызова требует дополнительного кругового пути по сети и создания плана выполнения, который просто вызывает план выполнения хранимой процедуры.

При выполнении хранимой процедуры приложения ODBC должны использовать конструкцию ODBC CALL. Драйвер оптимизирован так, что при обработке конструкции ODBC CALL использует механизм удаленного вызова процедур (RPC). Это более эффективный механизм, чем механизм, используемый для отправки инструкции Transact-SQL EXECUTE на сервер.

Дополнительные сведения см. в разделе Выполнение хранимых процедур.

См. также:

Выполнение инструкций (ODBC)