Выполнение хранимых процедур
Хранимая процедура представляет собой исполняемый объект, хранящийся в базе данных. SQL Server поддерживает:
Хранимые процедуры
Одна или несколько инструкций SQL предварительно откомпилированы в одну исполняемую процедуру.
Расширенные хранимые процедуры
Библиотеки динамических ссылок (DLL) C или C++, написанные с использованием API-интерфейса служб SQL Server Open Data Services для расширенных хранимых процедур. API-интерфейс служб Open Data Services расширяет возможности хранимых процедур, позволяя им использовать код на C или C++.
При выполнении инструкций путем вызова хранимой процедуры для источника данных (в противоположность непосредственному выполнению или подготовке инструкций в клиентском приложении) можно получить следующие преимущества.
Более высокая производительность
Инструкции SQL анализируются и компилируются во время формирования процедур. Затем эта дополнительная нагрузка компенсируется при выполнении процедур.
Снижение сетевых издержек
Когда вместо отправки по сети сложных запросов выполняется процедура, это способствует сокращению объема сетевого трафика. Если при выполнении хранимой процедуры приложение ODBC использует синтаксическую конструкцию ODBC {CALL}, драйвер ODBC принимает дополнительные меры по оптимизации, которые снимают необходимость преобразования данных параметров.
Повышение уровня согласованности
Если правила организации реализованы в центральном ресурсе, таком, как хранимая процедура, их можно кодировать, тестировать и отлаживать в один прием. Затем индивидуальные программисты могут использовать эти протестированные хранимые процедуры, не разрабатывая собственных реализаций.
Более высокая точность
Поскольку хранимые процедуры, как правило, создаются опытными программистами, они обычно бывают более эффективными и содержат меньше ошибок, нежели код, создаваемый многократно программистами различных уровней компетентности.
Дополнительные функциональные возможности
В расширенных хранимых процедурах можно использовать средства на языках C и C++, недоступные в инструкциях Transact-SQL.
Пример вызова хранимой процедуры см. в разделе Обработка кодов возврата и выходных параметров (ODBC).
В этом разделе
См. также
Основные понятия
Собственный клиент SQL Server (ODBC)