Создание и запуск хранимых процедур
Создание и запуск хранимых процедур
С помощью представления можно контролировать данные, возвращаемые SQL Server, однако существует еще более мощное средство — хранимые процедуры (stored procedures). Хранимые процедуры подобны представлениям, но могут выполнять более сложные операции над данными. Например, с помощью хранимых процедур можно выполнять следующие операции:
• вычисления;
• установка или возврат параметров;
• реализация логики приложения, для чего требуется выполнить несколько этапов или запросов с помощью языка программирования, предназначенного для использования с базой данных;
• возврат данных в форме, которая наилучшим образом подходит для приложения-клиента.
Заметьте: не все эти операции можно выполнить с помощью представлений.
Хранимую процедуру можно представить себе как особый вид процедуры, так как она хранится в самой базе данных, а не является частью приложения, которое выполняется на клиентском компьютере или прикладном сервере (именно поэтому она так и называется). В предыдущем списке операций указано, что хранимая процедура может содержать не только простой однострочный запрос, но и сложный многострочный запрос, который способен выполнить несколько действий, прежде чем возвратить результат.
Хранимые процедуры создаются на специальном языке программирования, который применяется в используемой базе данных. Этот язык содержит практически все распространенные программные конструкции, хотя его синтаксис не всегда очевиден. В SQL Server для создания хранимых процедур используется язык Transact SQL.
НА ЗАМЕТКУ
Компания Microsoft заявила, что будущие версии SQL Server позволят создавать хранимые процедуры на любом языке, который совместим с платформой .NET (например, Visual Basic .NET), а не только на языке Transact SQL. Это позволит разработчикам легко переходить от одного аспекта программирования к другому, не изучая синтаксиса нового языка программирования.
В этом разделе не ставится задача подробного описания всех команд, которые доступны программисту при создании хранимых процедур, а только дается общее описание принципов работы хранимых процедур, достоинств и способов применения в приложениях на основе SQL Server.
Создание хранимых процедур с помощью программы SQL Server Enterprise Manager
Для создания хранимой процедуры с помощью SQL Server Enterprise Manager выполните ряд действий.
1. В окне Microsoft SQL Servers программы SQL Server Enterprise Manager щелкните правой кнопкой мыши на папке Stored Procedures рабочей базы данных. В нашем примере это база данных pubs.
2. Из контекстного меню выберите команду New Stored Procedure (Создать хранимую процедуру). Появится диалоговое окно Stored Procedure Properties (Свойства хранимой процедуры).
НА ЗАМЕТКУ
Хотя диалоговое окно Stored Procedure Properties выглядит как окно с фиксированными размерами, его размер можно изменить, перетаскивая один из краев или уголков окна, как это делается с другими диалоговыми окнами. Таким образом можно изменить размер окна для более удобного отображения всего введенного текста.
3. Введите текст хранимой процедуры, который показан на рис. 3.18.
РИС. 3.18. Диалоговое окно создания новой хранимой процедуры Stored Procedure Properties в программе SQL Server Enterprise Manager
4. После выполнения этих действий щелкните на кнопке OK в нижней части диалогового окна Stored Procedure Properties.