Хранимая процедура являє собою підпрограму мовою SQL. Збережені процедури дозволяють підвищити продуктивність, розширюють можливості програмування і підтримують функції безпеки, недоступні при використанні команд SQL, відправлених для обробки на сервер.
Підвищується продуктивність - за рахунок локального (по відношенню до бази даних) зберігання та прекомпиляции вихідного тексту процедури. Можливості програмування розширюються завдяки застосуванню таких поширених засобів програмування, як використання вхідних і вихідних параметрів, а також підтримки багаторазового використання вже створених збережених процедур. Функції безпеки реалізуються через дозволу на використання процедури тільки певними користувачами. У результаті користувачі отримують лише обмежений доступ до внутрішньої структури бази даних, а для виконання маніпуляції з даними звертаються до зберігаються процедурам.
Оператор CREATE PROCEDURE створює збережену процедуру в базі даних. Синтаксис оператора CREATE PROCEDURE виглядає так:
CREATE PROCEDURE {ім'я збереженої процедури}
[
{@параметр1} {тип даних} [OUTPUT],
{@параметр2} {тип даних} [OUTPUT], ...
]
AS {текст зберігається процедури}
Оператор DROP PROCEDURE видаляє збережену процедуру з бази даних. Синтаксис оператора DROP PROCEDURE виглядає так:
DROP PROCEDURE {ім'я збереженої процедури}
Оператор EXEC використовується для виконання збереженої процедури. Синтаксис оператора EXEC виглядає так:
EXEC {ім'я збереженої процедури}
[{@параметр1} [OUTPUT], {@параметр2} [OUTPUT], ...]