Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Добавления: 14 апреля 2006 г.
После того как Мэри предоставлен доступ к базе данных TestData, можно создать некоторые объекты базы данных, такие как представление или хранимая процедура, а затем предоставить Мэри доступ к ним. Представление является хранимой инструкцией SELECT, а хранимая процедура представляет собой одну или более инструкций Transact-SQL, выполняемых в виде пакета.
Представления запрашиваются так же, как таблицы, и не принимают параметры. Хранимые процедуры сложнее, чем представления. Хранимые процедуры содержат как входные, так и выходные параметры и могут содержать инструкции, которые управляют потоком кода, например IF и WHILE. Использование хранимых процедур для всех повторяющихся действий в базе данных является хорошим стилем программирования.
В этом примере используется инструкция CREATE VIEW, чтобы создать представление, которое выбирает только два столбца в таблице Products. Затем с помощью инструкции CREATE PROCEDURE создается хранимая процедура, которая принимает цену в качестве параметра и возвращает только те продукты, цена которых меньше значения, указанного в качестве параметра.
Создание представления
Выполните следующую инструкцию, создающую очень простое представление, которое выполняет инструкцию select и возвращает названия и цены продуктов пользователю.
CREATE VIEW vw_Names AS SELECT ProductName, Price FROM Products; GO
Тестирование представления
С представлениями обращаются так же, как с таблицами. Используйте инструкцию
SELECT, чтобы получить доступ к представлению.SELECT * FROM vw_Names; GO
Создание хранимой процедуры
В следующем примере создается хранимая процедура
pr_Namesс входным параметром@VarPriceтипаmoney. Эта хранимая процедура печатает инструкциюProducts less than, соединенную операцией сцепления с входным параметром, тип которого преобразуется изmoneyвvarchar(10). Затем процедура выполняет инструкциюSELECTна представлении, передавая входной параметр в предложениеWHERE. Возвращаются все продукты, цена которых меньше значения входного параметра.CREATE PROCEDURE pr_Names @VarPrice money AS BEGIN -- The print statement returns text to the user PRINT 'Products less than ' + CAST(@VarPrice AS varchar(10)); -- A second statement starts here SELECT ProductName, Price FROM vw_Names WHERE Price < @varPrice; END GO
Тестирование хранимой процедуры
Чтобы выполнить хранимую процедуру, введите и выполните следующую инструкцию. Эта процедура должна возвратить названия двух продуктов, введенных в таблицу
Productsна занятии 1, цена которых меньше10.00.EXECUTE pr_Names 10.00; GO
Следующая задача занятия
Предоставление доступа к объекту базы данных
См. также
Другие ресурсы
CREATE VIEW (Transact-SQL)
CREATE PROCEDURE (Transact-SQL)
Управление выполнением
Процедурный язык Transact-SQL