Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
управление данными 2.doc
Скачиваний:
13
Добавлен:
07.11.2018
Размер:
2.08 Mб
Скачать
    1. 8.7. Отчет о выполнении работы

Отчет о выполнении лабораторной работы №8 необходимо оформить на листах формата A4. Отчет должен содержать описание и результаты работы, представляемые в следующей последовательности:

    1. 1. Словесное описание и сценарий создания представлений для своей базы данных.

    2. 2. Краткое описание запросов с использованием всех созданных представлений. Распечатка этих запросов с указанием количества возвращенных ими строк.

    3. 3. Перечень файлов, полученных при выполнении лабораторной работы с указанием их имен, места расположения, даты изменения и размеров (сценарий, база данных, резервная копия базы данных, файл с запросами и файл с отчетом).

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

    2. 1. Что такое представление?

    3. 2. Какие запросы допускается использовать для создания представлений?

    4. 3. Как изменить представление?

    5. 4. Для чего можно использовать представления?

    6. 5. Какие представления являются модифицируемыми?

    7. 6. Как сделать любое представление модифицируемым?

    8. 7. Зачем используется параметр WITH CHECK OPTION?

    9. 8. Какие имеются неудобства работы с представлениями?

    10. 9. Для чего предназначено представление, созданное на рис. 26?

    11. 10. Почему представление, показанное на рис. 26 не является модифицируемым?

    12. 11. Можно ли сделать так, чтобы у представления, показанного на рис. 26, можно было удалять строки? Что для этого надо сделать?

    1. 9. Лабораторная работа №9.

    2. Хранимые процедуры

    3. 9.1. Цель работы

Изучить виды используемых в Firebird хранимых процедур. Получить навыки работы с хранимыми процедурами с помощью команд SQL и с помощью программы "IB Expert".

9.2. Исходные данные

Исходными данными является индивидуальное задание и результат предыдущих лабораторных работ.

9.3. Используемые программы

Программы "IB Expert" и "Microsoft Word".

9.4. Теоретические сведения

9.4.1. Хранимые процедуры (Procedures)

Хранимая процедура – это откомпилированная во внутреннее представление сервера СУБД подпрограмма, хранящаяся в базе данных. Хранимые процедуры пишутся на специальном языке хранимых процедур и триггеров, в котором имеются операторы присваивания, ветвлений и циклов, и в которых можно использовать операторы SQL, такие как INSERT, DELETE, UPDATE и SELECT.

Хранимые процедуры позволяют переносить часть прикладных функций, связанных с обработкой данных, в саму данных. Например, хранимая процедура может управлять приемом заказа или переводом денег с одного банковского счета на другой. Для автоматического выполнения хранимых процедур при возникновении в базе данных определенных условий используются триггеры.

Хранимые процедуры создаются оператором CREATE PROCEDURE, в котором указываются следующие элементы:

    1. 1. имя хранимой процедуры;

    2. 2. входные и выходные параметры и их типы;

    3. 3. имена и типы данных локальных переменных, используемых процедурой;

    4. 4. последовательность инструкций, которые выполняются при вызове процедуры.

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

Многие СУБД поддерживают хранимые функции, которые отличаются от хранимых процедур тем, что возвращают значение. InterBase не поддерживает хранимых функций. В InterBase для возврата значений из хранимых процедур применяются выходные параметры.

Некоторые СУБД поддерживают параметры, которые одновременно являются и входными, и выходными. InterBase не поддерживает такой возможности.

Для параметров и локальных переменных хранимых процедур используются те же типы данных, которые поддерживаются СУБД для столбцов таблиц.

Синтаксис оператора создания хранимой процедуры в InterBase:

  1. CREATE PROCEDURE Имя_Процедуры [(Параметр <тип данных> [, Параметр <тип данных> ...])]

  2. [RETURNS (Параметр <тип данных> [, Параметр <тип данных> ...])]

  3. AS [<список переменных>] <блок>; <список переменных> =

  4. DECLARE [VARIABLE] Переменная <тип данных>;

  5. [DECLARE [VARIABLE] Переменная <тип данных>; ...]

  6. <блок> =

  7. BEGIN

  8. <составной оператор>

  9. [<составной оператор>...]

  10. END

  11. <составной оператор> = <блок> | Оператор;

  12. <тип данных> = один из типов данных InterBase

Оператор – любой одиночный оператор языка хранимых процедур и триггеров InterBase.

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

Основные преимущества хранимых процедур:

    1. 1. Производительность – перенос на сервер часто используемых действий приводит к существенному повышению производительности.

    2. 2. Многократное использование кода – части приложения, перенесенные на сервер, могут использоваться любыми другими приложениями, имеющими доступ к серверу.