Курс: Oracle Database 12с: Разработка программных модулей на PL/SQL
Продолжительность курса: 24 ак. ч.
Описание курса:
Курс предназначен для разработчиков с базовыми знаниями SQL и PL/SQL. Прослушав курс, слушатели научатся разрабатывать, выполнять и сопровождать хранимые программные единицы PL/SQL, такие, как процедуры, функции, пакеты и триггеры базы данных. Слушатели также научатся сопровождать подпрограммы PL/SQL и триггеры и получат представление об использовании некоторых стандартных пакетов, поставляемых Oracle. Кроме того, слушатели получат представление об использовании динамического SQL, понимание модульного, многоуровневого подхода к проектированию программ на PL/SQL, описанию и использованию возможностей компилятора, управление зависимостями. В данном курсе слушатели будут использовать Oracle SQL Developer как основной инструмент для разработки кода. SQL*Plus предлагается как дополнительный инструментарий.
Аудитория:
• Разработчики приложений
• Разработчики PL/SQL
• Администраторы баз данных
• Разработчики форм
• Системные аналитики
• Специалисты отделов технической поддержки
Необходимая подготовка:
• Прослушать курс Oracle Database 12c: Основы SQL
• Прослушать курс Oracle Database 12c: Основы PL/SQL
• Иметь опыт программирования
После изучения курса слушатель будет уметь:
• Создавать и выполнять хранимые процедуры и функции
• Разрабатывать и использовать пакеты PL/SQL
• Использовать перегруженные пакетные подпрограммы для большей гибкости кода
• Применять поставляемые Oracle стандартные пакеты в разработке приложений
• Создавать триггеры для решения сложных бизнес-правил
• Строить и выполнять команды 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
• Динамическое выполнение блока 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. Сопровождение зависимостей
• Обзор зависимостей между объектами
• Отслеживание зависимостей между объектами при помощи представлений словаря данных
• Определение эффекта от изменения объекта базы данных на процедуры и функции
• Локальные и удаленные зависимости
Записаться на курс