Реферат Курсовая Конспект
В начало - раздел Программирование, БАЗИСНЫЕ ЭЛЕМЕНТЫ ЯЗЫКА PL/SQL 4. Программные Конструкции Pl/sql ...
|
4. ПРОГРАММНЫЕ КОНСТРУКЦИИ PL/SQL
В PL/SQL имеется множество различных программных конструкций, начиная с модулей разных видов и заканчивая логическими конструкциями, управляющими потоком информации. Пользуясь PL/SQL, разработчик может создавать программные модули многоразового применения, скрывающие сложность исполнения операции за ее именем. Например, процесс добавления записи о служащем в базу данных компании может быть весьма сложен, обязывая ввести записи в несколько различных таблиц для нескольких различных приложений. Добавить записи в каждую из систем можно с помощью хранимых процедур, а пользователю будет казаться, что нужно выполнить лишь одну операцию на экране — ввести данные.
Рис.2 Модульность и PL/SQL
В действительности же ввод данных на экране может привести к вызову десятков отдельных процедур, каждая из которых предназначена для обработки одного маленького компонента общего процесса добавления сведений о служащем. Иногда эти компоненты являются многократно используемыми программными блоками ввода данных, которые берутся из различных приложений для работы с людскими ресурсами и изменяются на новом экране в соответствии с вводимыми данными. На рис. 2 показано, как модульность реализуется в блоках PL/SQL.
Программные конструкции PL/SQL в Oracle бывают двух видов Во-первых, это именованные блоки PL/SQL, которые хранятся в базе данных и к которым могут обращаться по имени другие блоки PL/SQL или пользователь из командной строки SQL*Plus. При передаче именованного программного блока в Oracle база данных подвергает его грамматическому разбору и компилирует его, а затем сохраняет с присвоенным ему именем.
Кроме именованных, существуют и неименованные, или анонимные, блокиPL/SQL. Анонимный блок состоит из нескольких команд PL/SQL, которые все сразу передаются в Oracle для грамматического разбора и исполнения. Анонимные блоки не хранятся в базе данных Oracle так, как именованные блоки. Oracle подвергает операторы грамматическому разбору и исполняет их при передаче блока.
Именованные и анонимные блоки PL/SQL состоят из трех компонентов: раздела объявлений переменных, исполняемого раздела и обработчика исключительных ситуаций (таблица 7). В необязательном разделе объявлений описываются все конструкции переменных, которые будут использоваться в программном блоке. Переменная может иметь любой тип данных, доступный в базе данных Oracle, а также ряд других типов, применяемых только в PL/SQL. Исполняемый раздел блока PL/SQL обязателен и начинается с ключевого слова begin, заканчиваясь либо ключевым словом end для всего программного блока, либо ключевым словом exception. Последний компонент блока PL/SQL — это обработчик исключительных ситуаций, где описываются все ошибки, которые могут произойти в блоке, и указываются способы их обработки. В PL/SQL обработчик исключительных ситуаций необязателен.
Таблица 7. Компоненты блоков PL/SQL
Анонимный блок | Именованный блок | ||
DECLARE …. BEGIN …. EXCEPTION …. END | /* Начало раздела объявлений. */ /* Начало исполняемого раздела программного блока. */ /* Начало обработчика исключительных ситуаций. */ | IS …. BEGIN …. EXCEPTION …. END | /* Начало раздела объявлений. */ /* Начало исполняемого раздела программного блока. */ /* Начало обработчика исключительных ситуаций. */ |
Блоки PL/SQL могут быть вложенными друг в друга, так что конструкция begin-exception-end может находиться внутри другого блока.
Именованные программные блоки PL/SQL подразделяются на четыре класса: хранимые процедуры, функции, модули (пакеты) и триггеры.
Процедура- именованный программный блок PL/SQL, который состоит из группы операторов, принимающих и/или возвращающих нуль или более переменных.
Функция - именованный программный блок PL/SQL, который состоит из группы операторов, принимающих нуль или более переменных и возвращающих одно значение.
Модуль (или пакет) - именованный программный блок PL/SQL, состоящий из совокупности именованных процедур и функций и имеет две части Первая часть - это спецификация, или описание (specification), где перечисляются применяемые процедуры и функции, а также их параметры, константы и объявления пользовательских типов. Вторая часть — тело (body), в котором содержится реальный программный текст процедур и функций.
Триггер - именованный программный блок PL/SQL, который состоит из rpyппы операторов, связанных с таблицей базы данных. Всякий раз при возникновении активизирующего события, например UPDATE, INSERT или DELETE, срабатывает соответствующий триггер.
В ответ на активизирующее событие триггеры могут срабатывать один раз для всей таблицы или для каждой строки, которая модифицируется активизирующим событием. Можно также устанавливать триггеры для активизации только в ответ на изменение одного столбца строки.
– Конец работы –
Эта тема принадлежит разделу:
ВВЕДЕНИЕ... БАЗИСНЫЕ ЭЛЕМЕНТЫ ЯЗЫКА PL SQL... ТИПЫ PL SQL...
Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: В начало
Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:
Твитнуть |
Новости и инфо для студентов