Oracle Database: Develop PL/SQL Program Units
В курсе детально изучается разработка, выполнение и управление хранимыми программными конструкциями PL/SQL, такими, как процедуры, функции, пакеты и триггеры базы данных.
Слушатели научатся использовать некоторые стандартные пакеты, поставляемые Oracle.
Кроме того, слушатели получат представление об использовании динамического SQL (Dynamic SQL) в рамках проектирования PL/SQL-кода .
Изучение способов влияния на компиляцию PL/SQL-кода и управления зависимостями позволят слушателям лучше понять язык PL/SQL.
В данном курсе слушатели будут использовать Oracle SQL Developer как основной инструмент для разработки кода. SQL*Plus предлагается как дополнительный инструментарий.
Курс подходит как для версий 10g, 11g, так и для версии 12c.
Требования к подготовке слушателей:
Базовые знания PL/SQL
Знакомство с SQL в объеме курса Oracle Database: Introduction to SQL (либо Oracle Database: SQL Fundamentals I, II)
Опыт программирования
Длительность
Доступ к курсу
Документы
Расписание
Кому подойдет этот курс
Слушатели получают знания для выполнения следующих действий:
Создание пакетов (overloaded package) с возможностью перезагрузки пакетных подпрограмм (переопределение функции) для достижения большей гибкости кода
Применение поставляемых Oracle стандартных пакетов при разработке приложений
Создание триггеров для реализации сложных бизнес-правил( проверок )
Формирование контекста SQL-команд динамически (Dynamic SQL)
Создание и выполнение хранимых процедур и функций
Программа курса
Обзор учебной схемы курса - Персонал (HR).
Обзор документации Oracle Database 12c по SQL, и PL/SQL и дополнительным материалам.
Инструменты разработки, используемые в курсе.
Использование SQL Worksheet.
Выполнение команд SQL. Работа с файлами сценариев.
Создание и выполнение анонимных блоков.
Использование и достоинства процедур.
Создание, вызов и удаление процедур.
Использование формальных и актуальных параметров.
Различные режимы передачи параметров.
Передача параметров при помощи позиционного, именованного или комбинированного метода.
Обработка исключений в процедурах.
Просмотр информации о процедурах.
Разработка функций.
Создание, выполнение и удаление функций.
Преимущества использования хранимых функций в SQL.
Использование пользовательских функций в SQL.
Использование функции PL/SQL в конструкции WITH.
Ограничения на вызов функций из SQL.
Компоненты пакета PL/SQL.
Область видимости компонент пакета PL/SQL.
Разработка пакета PL/SQL.
Создание спецификации и тела пакета.
Вызов пакетных конструкций.
Создание и использование пакета без тела.
Удаление пакета.
Использование предварительного объявления для разрешения ссылок на еще не описанные программные единицы.
Инициализация пакетов.
Ограничения на использование пакетных функций в SQL.
Контроль побочных эффектов в подпрограммах PL/SQL.
Постоянное состояние пакетов.
Постоянное состояние пакетных переменных и курсоров.
Использование в пакетах таблиц типа данных RECORD.
Примеры некоторых стандартных пакетов.
Как работает пакет DBMS_OUTPUT?
Использование пакета UTL_FILE для работы с файлами операционной системы.
Использование пакета UTL_MAIL.
Что такое динамический SQL?
Зачем нужен динамический SQL?
Использование родного динамического SQL (NDS) для компиляции кода PL/SQL.
Определение переменных в курсоре.
Динамическое выполнение блока PL/SQL.
Стандартизация исключений в пакете с исключениями.
Использование локальных подпрограмм в коде PL/SQL.
Выдача ролей на пакеты и хранимые процедуры.
Использование подсказки компилятору NOCOPY для передачи параметра по ссылке.
Применение подсказки компилятору PARALLEL_ENABLE для оптимизации кода.
Использование подсказки компилятору AUTONOMOUS_TRANSACTION для запуска независимых транзакций внутри одной транзакции.
Разница между правами вызывающего и правами владельца.
Работа с триггерами.
Создание триггеров базы данных.
Описание правил срабатывания триггеров.
Удаление триггеров.
Изменяющиеся таблицы и триггеры.
Создание триггеров, срабатывающих на команды DDL.
Создание триггеров, срабатывающих на системные события.
Получение информации о триггерах.
Параметры инициализации, влияющие на компиляцию кода PL/SQL.
Категории предупреждений компилятора.
Просмотр текущих значений параметра инициализации PLSQL_WARNINGS.
Просмотр предупреждений компилятора при помощи SQL Developer, SQL*Plus или представлений словаря данных.
Рекомендации по использованию PLSQL_WARNINGS.
Отслеживание зависимостей между объектами при помощи представлений словаря данных.
Определение эффекта, оказываемого на процедуры и функции, от изменения объекта базы данных.
Локальные и удаленные зависимости.