Oracle 12c: Разработка программных модулей PL/SQL
Or12с_DPU
Курс предназначен для разработчиков с базовыми знаниями SQL и PL/SQL. Прослушав курс, слушатели научатся разрабатывать, выполнять и сопровождать хранимые программные единицы PL/SQL: процедуры, функции, пакеты и триггеры базы данных.
Аудитория
- Разработчики приложений
- Администраторы баз данных
- Разработчики PL/SQL
- Специалисты отделов технической поддержки
- Разработчики форм
- Системные аналитики
Результат обучения
После успешного прохождения курса слушатели должны будут уметь:
- Создавать и выполнять хранимые процедуры и функции
- Разрабатывать и использовать пакеты PL/SQL
- Использовать перегруженные пакетные подпрограммы для большей гибкости кода
- Применять в разработке приложений пакеты, поставляемые Oracle
- Создавать триггеры для реализации сложных бизнес-правил
- Строить и выполнять команды SQL динамически
- Сопровождать подпрограммы и триггеры PL/SQL
- Воздействовать на компилятор PL/SQL
- Сопровождать зависимости
Предварительный уровень подготовки
- Базовые знания PL/SQL
- Oracle 12c: Основы SQL
- Oracle 12с: Основы PL/SQL
- Опыт программирования
Программа курса
1. Введение
- Цели курса и план.
- Обзор учебной схемы курса - Персонал (HR).
- Обзор документации Oracle Database 12c по SQL, и PL/SQL и дополнительным материалам.
- Инструменты разработки, используемые в курсе.
- Использование SQL Worksheet.
- Выполнение команд SQL.
- Работа с файлами сценариев.
- Создание и выполнение анонимных блоков.
2. Создание хранимых процедур
- Блоки PL/SQL и подпрограммы.
- Использование и достоинства процедур.
- Создание, вызов и удаление процедур.
- Использование формальных и актуальных параметров.
- Различные режимы передачи параметров.
- Передача параметров при помощи позиционного, именованного или комбинированного метода.
- Обработка исключений в процедурах.
- Просмотр информации о процедурах.
3. Создание хранимых функций и отладка подпрограмм
- Разница между процедурами и функциями.
- Разработка функций.
- Создание, выполнение и удаление функций.
- Преимущества использования хранимых функций в SQL.
- Использование пользовательских функций в SQL.
- Использование функции PL/SQL в конструкции WITH.
- Ограничения на вызов функций из SQL.
4. Создание пакетов
- Пакеты PL/SQL.
- Компоненты пакета PL/SQL.
- Область видимости компонент пакета PL/SQL.
- Разработка пакета PL/SQL.
- Создание спецификации и тела пакета.
- Вызов пакетных конструкций.
- Создание и использование пакета без тела.
- Удаление пакета.
5. Работа с пакетами
- Перегрузка пакетных подпрограмм в PL/SQL.
- Использование предварительного объявления для разрешения ссылок на еще не описанные программные единицы.
- Инициализация пакетов.
- Ограничения на использование пакетных функций в SQL.
- Контроль побочных эффектов в подпрограммах PL/SQL.
- Постоянное состояние пакетов.
- Постоянное состояние пакетных переменных и курсоров.
- Использование в пакетах таблиц типа данных RECORD.
6. Использование в разработке приложений пакетов, поставляемых Oracle
- Обзор пакетов, поставляемых Oracle.
- Примеры некоторых стандартных пакетов.
- Как работает пакет DBMS_OUTPUT?
- Использование пакета UTL_FILE для работы с файлами операционной системы.
- Использование пакета UTL_MAIL.
7. Динамический SQL
- Этапы выполнения команды SQL.
- Что такое динамический SQL?
- Зачем нужен динамический SQL?
- Использование родного динамического SQL (NDS) для компиляции кода PL/SQL.
- Определение переменных в курсоре.
- Динамическое выполнение блока PL/SQL.
8. Рекомендации по дизайну кода PL/SQL
- Стандартизация констант в пакете с константами.
- Стандартизация исключений в пакете с исключениями.
- Использование локальных подпрограмм в коде PL/SQL.
- Выдача ролей на пакеты и хранимые процедуры.
- Использование подсказки компилятору NOCOPY для передачи параметра по ссылке.
- Применение подсказки компилятору PARALLEL_ENABLE для оптимизации кода.
- Использование подсказки компилятору AUTONOMOUS_TRANSACTION для запуска независимых транзакций внутри одной транзакции.
- Разница между правами вызывающего и правами владельца.
9. Создание триггеров базы данных
- Описание различных видов триггеров.
- Работа с триггерами.
- Создание триггеров базы данных.
- Описание правил срабатывания триггеров.
- Удаление триггеров.
10. Создание комбинированных (COMPOUND) триггеров, DDL-триггеров и триггеров, срабатывающих по системным событиям базы данных
- Работа с комбинированными триггерами.
- Изменяющиеся таблицы и триггеры.
- Создание триггеров, срабатывающих на команды DDL.
- Создание триггеров, срабатывающих на системные события.
- Получение информации о триггерах.
11. Использование компилятора PL/SQL
- Использование компилятора PL/SQL.
- Параметры инициализации, влияющие на компиляцию кода PL/SQL.
- Категории предупреждений компилятора.
- Просмотр текущих значений параметра инициализации PLSQL_WARNINGS.
- Просмотр предупреждений компилятора при помощи SQL Developer, SQL*Plus или представлений словаря данных.
- Рекомендации по использованию PLSQL_WARNINGS.
12. Сопровождение зависимостей
- Обзор зависимостей между объектами.
- Отслеживание зависимостей между объектами при помощи представлений словаря данных.
- Определение эффекта, оказываемого на процедуры и функции, от изменения объекта базы данных.
- Локальные и удаленные зависимости.