1.4.20. Программирование объектов базы с помощью PL/SQL.
PL/SQL – язык, который является добавлением к SQL-языку и включает в себя процедурные средства алгоритмических языков.
С помощью PL/SQL можно создавать:
1) Хранимые процедуры или функции. Размещаются хранимые процедуры на сервере БД и могут быть доступны многим приложениям. Хранимые процедуры могут иметь входные и выходные параметры и могут выполняться многократно.
2) Процедуры и функции приложений. В двухуровневой архитектуре размещаются на клиенте. (Вставить картинку)
В процедурах и функциях приложения могут задаваться входные и выходные параметры. Выполняются процедуры и функции многократно.
3) Триггеры баз данных – это программы, связанные с конкретными таблицами БД, которые обрабатывают одно из 3-х событий DML (Insert, Update, Delete) и осуществляют проверку бизнес-правил. Можно сказать, триггеры выполняют защиту данных. Хранятся триггеры БД всегда там, где хранится база, т.е. на сервере. Триггеры БД выполняются автоматически, как только идет обращение к конкретной таблице.
4) Триггер приложения – это программа, связанная с событием приложения. Если срабатывает событие, то срабатывает триггер, написанный на соответствующее событие. Хранятся триггеры приложений на клиенте (в двухуровневой архитектуре), либо на сервере приложений (в трехуровневой архитектуре). События для триггера приложения: щелчок по кнопке, очистка поля, переход на другую форму/закладку, раскрытие списка и др. Выполняется автоматически, если срабатывает событие.
Преимущества PL/SQL:
• Возможность модульной разработки приложения;
• Возможность объявления идентификаторов, т.е. объявление констант, переменных, курсоров, исключений;
• Возможность использовать структуры управления процедурами с помощью команд If, For, Case, While;
• Возможность обработки ошибок, т.е. выдача пользователю предупреждающих сообщений;
• Переносимость и интеграция (можно хранить приложение и на клиенте, и на сервере);
• За счет создания модулей повышается производительность работы сервера.
Модульное программирование на PL/SQL и подпрограммы.
Подпрограммы бывают 3-х типов:
1) Процедуры, которые выполняют действия;
2) Функции, которые вычисляют значения;
3) Пакеты, объединяющие процедуры и функции.
Структура процедур и функций.
Состоят из 3-х секций:
1) Декларативная – (объявление переменных) содержит описание переменных, констант, курсоров, исключения пользователей;
2) Исполняемый код – содержит команды SQL для манипулирования данными в базе + конструкции алгоритмического языка PL/SQL;
3) Обработка исключений (необязательная секция) – задает действия, которые выполняются при возникновении ошибки или некорректных условий
Синтаксис процедуры
Procedure имя_процедуры
[(формальные параметры)]
Is
Декларативная секция;
Begin
Исполняемый код;
[обработка исключений;]
End;
Если процедура находится на сервере БД, то сохраняется в файле с расширением .dbf. Процедура является объектом сервера Oracle, который создается пользователем.
Синтаксис функции
Function имя_функции
[(формальные параметры)]
Return тип_выходных_данных
Begin
Исполняемый код;
End;
Параметры бывают трех типов:
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.