Курс Oracle Database: Develop PL/SQL Program Units

Код: DPU

Продолжительность курса

24 Академических часа

Ближайшие курсы

Июль

29.07.2020 - 31.07.2020 Мск

Данный курс предназначен для разработчиков, знакомых с основами PL/SQL и SQL. В курсе детально изучается разработка, выполнение и управление хранимыми программными конструкциями PL/SQL, такими, как процедуры, функции, пакеты и триггеры базы данных. Слушатели научатся использовать некоторые стандартные пакеты, поставляемые Oracle. Кроме того, слушатели получат представление об использовании динамического SQL (Dynamic SQL) в рамках проектирования PL/SQL-кода .
Изучение способов влияния на компиляцию PL/SQL-кода и управления зависимостями позволят слушателям лучше понять язык PL/SQL.
В данном курсе слушатели будут использовать Oracle SQL Developer как основной инструмент для разработки кода. SQL*Plus предлагается как дополнительный инструментарий.

Курс подходит как для версий 10g, 11g, так и для версии 12c.

Стоимость курса

67 050 руб
Заказать

Аудитория

  • Разработчики приложений
  • Администраторы баз данных
  • Системные аналитики
  • Специалисты отделов технической поддержки

От слушателя требуется

  • Базовые знания PL/SQL
  • Знакомство с SQL в объеме курса Oracle Database: Introduction to SQL (либо Oracle Database: SQL Fundamentals I, II)
  • Опыт программирования

Содержание курса

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. Сопровождение зависимостей
Обзор зависимостей между объектами. Отслеживание зависимостей между объектами при помощи представлений словаря данных. Определение эффекта, оказываемого на процедуры и функции, от изменения объекта базы данных. Локальные и удаленные зависимости.