SE-11GDPU ______ Oracle Database: Разработка программных модулей на PL/SQL

Слушатели

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

 

Предварительные требования

  • Oracle11g: Основы SQLI, SQLII;
  • Oracle11g: Основы PL/SQL;
  • Опыт программирования
  • Базовые знания PL/SQL

 

Цели курса

Курс предназначен для разработчиков с базовыми знаниями SQL и PL/SQL. Прослушав курс, слушатели научатся разрабатывать, выполнять и сопровождать хранимые программные единицы PL/SQL, такие, как процедуры, функции, пакеты и триггеры базы данных.

Слушатели также научатся сопровождать подпрограммы PL/SQL и триггеры и получат представление об использовании некоторых стандартных пакетов, поставляемых Oracle. Кроме того, слушатели получат представление об использовании динамического SQL, понимание модульного, многоуровневого подхода к проектированию программ на PL/SQL, описанию и использованию возможностей компилятора, управление зависимостями.

В данном курсе слушатели будут использовать Oracle SQL Developer как основной инструмент для разработки кода. SQL*Plus предлагается как дополнительный инструментарий.

 

ПРОГРАММА КУРСА

Введение

  • Цели курса и план
  • Обзор учебной схемы курса - Персонал (HR)
  • Приложения, существующие в данном курсе
  • Программные конструкции PL/SQL
  • Использование SQL Developer
  • Интерактивный доступ к документации Oracle11g SQL и PL/SQL, а также дополнительным ресурсам

Создание хранимых процедур

  • Модульный и многоуровневый дизайн подпрограмм
  • Модульность разработки с помощью блоков PL/SQL
  • Среда исполнения кода PL/SQL
  • Преимущества использования подпрограмм PL/SQL
  • Различия между анонимными блоками и подпрограммами
  • Создание, вызов и удаление хранимых процедур при помощи команды CREATE и SQL Developer
  • Использование параметров в процедурах и различные режимы параметров
  • Просмотр информации о процедурах в представлениях словаря данных

Создание хранимых функций

  • Создание, вызов и удаление хранимых функций при помощи команд SQL и SQL Developer
  • Преимущества использования хранимых функций в SQL-выражениях
  • Шаги по созданию хранимой функции
  • Использование пользовательских функции в SQL-выражениях
  • Ограничения на вызов функций из SQL-выражений
  • Контроль побочных эффектов при вызове функций из SQL выражений
  • Просмотр информации о функциях в словаре данных

Создание пакетов

  • Преимущества использования пакетов
  • Описание пакетов
  • Компоненты пакетов
  • Разработка пакетов
  • Видимость компонентов пакета
  • Создание спецификации и тела пакета при помощи команд SQL и SQLDeveloper
  • Вызов пакетных конструкций
  • Просмотр исходного кода PL/SQL в словаре данных

Работа с пакетами

  • Перегрузка пакетных подпрограмм в PL/SQL
  • Использование пакета STANDARD
  • Использование предварительного объявления для разрешения ссылок на еще не описанные программные единицы
  • Ограничения на использование пакетных функций в SQL
  • Устойчивое состояние пакета
  • Устойчивое состояние пакетного курсора
  • Контроль уровня чистоты хранимых функций PL/SQL
  • Использование типа данных RECORD с таблицами PL/SQL в пакетах

Использование стандартных пакетов Oracle в разработке приложений

  • Обзор стандартных пакетов, поставляемых Oracle
  • Примеры некоторых из стандартных пакетов
  • Как работает пакет DBMS_OUTPUT?
  • Использование пакета UTL_FILE для работы с файлами операционной системы
  • Пакет UTL_MAIL и использование его подпрограмм

Динамический SQL и метаданные

  • Этапы выполнения команды SQL
  • Что такое динамический SQL?
  • Декларация курсорных переменных
  • Динамическое выполнение блока PL/SQL
  • Использование собственного динамического SQL (NDS) для компиляции кода PL/SQL
  • Использование пакета DBMS_SQL с параметризованной командой DML
  • Функциональная завершенность динамического SQL

Рекомендации по дизайну кода PL/SQL

  • Стандартизация констант и исключений
  • Использование локальных подпрограмм
  • Применение автономных транзакций
  • Использование подсказки компилятору NOCOPY
  • Применение подсказки компилятору PARALLEL_ENABLE
  • Использование кроссеансного кэширования результата PL/SQL функций
  • Использование условия DETERMINISTIC с функциями
  • Использование массового связывания для повышения производительности

Создание триггеров базы данных

  • Работа с триггерами
  • Определение типа триггера, времени его срабатывания и тела
  • Сценарии бизнес-применения триггеров
  • Создание DML-триггеров при помощи команды CREATE TRIGGER и SQL Developer
  • Определение типа события, на которое срабатывает триггер, тела триггера и времени срабатывания
  • Операторные и строчные триггеры
  • Создание триггеров INSTEAD OF , а также выключение триггеров
  • Сопровождение, тестирование и удаление триггеров базы данных

Создание комбинированных (COMPOUND) триггеров, DDL-триггеров и триггеров, срабатывающих по системным событиям базы данных

  • Работа с комбинированными триггерами
  • Идентификация раздела времени выполнения для табличного комбинированного триггера
  • Структура комбинированного триггера для таблиц и представлений
  • Использование комбинированного триггера для чтения данных из мутирующей таблицы
  • Сравнение триггеров базы данных и хранимых процедур
  • Создание триггеров на DDL команды
  • Триггеры, срабатывающие по событиям в базе данных
  • Системные привилегии, необходимые для сопровождения триггеров

Использование компилятора PL/SQL

  • Использование компилятора PL/SQL
  • Установка параметров инициализации, влияющих на компиляцию кода PL/SQL
  • Категории предупреждений компилятора
  • Использование предупреждений времени компиляции в подпрограммах
  • Преимущества использования предупреждений компилятора
  • Категории предупреждений компилятора
  • Установка уровней предупреждений компилятора при помощи SQL Developer, инициализационного параметра PLSQL_WARNINGS либо подпрограмм пакета DBMS_WARNINGS
  • Просмотр предупреждений компилятора при помощи SQL Developer, SQL*Plus или представлений словаря данных

Сопровождение кода PL/SQL

  • Что такое условная компиляция и как она работает?
  • Использование директив выбора.
  • Использование предопределенной и пользовательской директив опроса.
  • Параметр PLSQL_CCFLAGS и директива опроса
  • Применение директив ошибки при условной компиляции для возбуждения определенных пользователем исключений
  • Пакет DBMS_DB_VERSION
  • Применение процедуры DBMS_PREPROCESSOR для печати или получения исходного кода после условной компиляции
  • Защита исходного кода в подпрограммах PL/SQL.

Обслуживание зависимостей

  • Обзор зависимостей между объектами
  • Просмотр прямых зависимостей между объектами при помощи представления USER_DEPENDENCIES
  • Определение статуса объектов
  • Недействительность зависимых объектов
  • Просмотр прямых и косвенных зависимостей
  • Детальное управление зависимостями в базе данных Oracle 11g
  • Удаленные зависимости
  • Перекомпиляция программных единиц PL/SQL

 

Длительность 3 дня/ 24 часа

Свяжитесь с нами,
удобным для вас способом!
Оставить заявку