Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БД ЛР №8.doc
Скачиваний:
6
Добавлен:
10.11.2019
Размер:
117.76 Кб
Скачать

1.2. Выполнение хранимой процедуры

Хранимая процедура может быть вызвана несколькими способами. Простейший способ — это использование оператора:

EXEC <имя процедуры>

<значение_входного_параметра1>

<имя_переменной_для_выходного параметра1>

При этом все входные и выходные параметры должны быть заданы обязательно и в том порядке, в котором они определены в процедуре.

Например, если мне надо найти число экземпляров книги "Oracle8. Энциклопедия пользователя", которая имеет ISBN 966-7393-08-09, то текст вызова ранее созданной хранимой процедуры может быть следующим:

/*определили две переменные

@Ntek – количество экземпляров данной книги в наличие в библиотеке

@ISBN – международный шифр книги */

declare @Ntek int

DECLARE @ISBN VARCHAR(14)

/* Присвоим значение переменной @ISBN */

Select @ISBN = '966-7393-08-09'

/* Присвоим переменной @Ntek результаты

выполнения хранимой процедуры COUNT_EX */

EXEC @Ntek = COUNT_EX @ISBN

Если у вас определено несколько версий хранимой процедуры, то при вызове вы можете указать номер конкретной версии для исполнения. Так, например, в версии 2 процедуры COUNT_EX последний оператор исполнения этой процедуры имеет вид:

EXEC @Ntek = COUNT_EX;2 @ISBN

Однако если в процедуре определены значения входных параметров по умолчанию, то при запуске процедуры могут быть указаны значения не всех параметров. В этом случае оператор вызова процедуры может быть записан в следующем виде:

EXEC <имя процедуры>

<имя_параметра1>=<значение параметра1>

<имя_параметраN>=<значение параметраN>

  1. Порядок выполнения работы

2.1. Выбор задания

Продолжаем выполнение задания (лабораторные работы №1, №2 №3 №4, №5, №6 и №7), выбранного из таблицы 8.1. (см. Приложение). Вариант соответствует номеру студента в списке учебной группы. Для всех последующих лабораторных работ вариант остается неизменным. Каждый студент разрабатывает свой вариант БД.

2.2. Изучение способов создания и вызова хранимых процедур.

На основании ранее созданной базы данных из лабораторной работы №5 необходимо создать согласно пунктам 1.1. – 1.2 лабораторной работы №8:

  • п.1.1. – 2 процедуры с использованием условия WITH,

  • п.1.2. – вызвать созданные процедуры командой EXEC.

Для этого:

  1. Запустить программу IBExpert из C:\Program Files\ IBExpert

2. Загрузить разработанную в ЛР №5 базу данных. Для чего в окне Database Explorer кликнуть правой кнопкой мыши на названии базы. Или выбрав базу, в окне База данных нажать Подключиться к базе…

4. Выбрать окно Инструменты и загрузить из него SQL- редактор (F12)

5. Набрать необходимые команды и сохранить результаты для отчета.

3. Содержание отчета

  1. Название и цель работы .

  2. Все рассмотренные в лабораторной работе хранимые процедуры.

  3. Результатами выполненной команды EXEC.

  4. Выводы

4. Контрольные вопросы

1. Что такое хранимые процедуры в SQL?

2. Синтаксис оператора CREATE PROCEDURE?

3. Для чего служит условие WITH оператора CREATE PROCEDURE?

4. Дайте определение ключевого слова OUTPUT оператора CREATE PROCEDURE?

5. Как вызвать хранимую процедуру в SQL?

6. Каким образом возможно указать номер версии хранимой процедуры в операторе EXEC?

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]