О чём курс
В курсе проходит углубленное изучение процедурного языка Oracle PL/SQL. Более подробно рассматривается использование хранимых PL/SQL-объектов СУБД Oracle (процедуры, функции, пакеты, триггеры), предоставляющие мощнейшие возможности для создания бизнес-логики приложений, использующих технологии Oracle. Рассматриваются также новые возможности версии 11g.
Цели
После завершения обучения слушатели смогут:
создавать, модифицировать, удалять хранимые объекты PL/SQL
эффективнее обрабатывать исключения;
пользоваться стандартными пакетами БД Oracle;использовать динамический SQL;
эффективнее работать с объектными типами и коллекциями.
Целевая аудитория
Администраторы баз данных, разработчики приложений, аналитики, тестировщики.
Для кого
Разработчик
Дата-аналитик
Тестировщик
Улучшаемые навыки
Основы PL/SQL
Создание и использование процедур и функций
Обработка исключений
Работа с курсорами
Оптимизация производительности PL/SQL
Темы курса
Программные конструкции PL/SQL.
Описание схемы HR (Human Resources), используемой в курсе.
Работа в Oracle SQL Developer.
Редактирование и выполнение анонимного блока в SQL Developer.
Сохранение и выполнение SQL-скриптов.
Ссылки на дополнительные ресурсы.
Описание использования процедур.
Создание процедур.
Создание процедур с параметрами.
Вызов процедуры.
Обработка исключений.
Удаление процедуры.
Описание использования функций.
Создание функций.
Вызов функции.
Функции в SQL-командах.
Удаление функции.
Различия между процедурами и функциями.
Описание пакетов и перечисление их компонент.
Спецификация и тело пакета.
Создание пакетов, задание частных и общедоступных конструкций.
Вызов пакетных объектов.
Удаление пакетов.
05
Дополнительные особенности работы с пакетами
Перегрузка пакетных процедур и функций.
Как избежать ошибок при взаимных ссылках подпрограмм.
Инициализация переменных в процедуре, выполняемой только один раз.
Использование пакетных функций в SQL.
Сохранение состояния пакетных переменных, курсоров, таблиц и записей.
Использование PL/SQL-таблиц записей в пакетах.
06
Использование некоторых стандартных пакетов Oracle (для ввода-вывода)
Обзор стандартных пакетов Oracle.
Пакет DBMS_OUTPUT.
Пакет UTL_FILE.
Пакет UTL_MAIL.
Пакет DBMS_SCHEDULER.
Пакет DBMS_METADATA.
Пакет DBMS_LOB.
Этапы выполнения SQL-предложения.
Выполнение динамических SQL-предложений с использованием EXECUTE IMMEDIATE.
Выполнение динамических SQL -предложений с использованием пакета DBMS_SQL.
Создание в пакетах констант и исключений.
Локальные подпрограммы.
Права создателя и вызывающего хранимую процедуру.
Использование подсказки NOCOPY для программных параметров.
Автономные транзакции.
Использование клаузы DETERMINISTIC.
Использование коллекций для массовых операций.
09
Создание триггеров базы данных
Описание различных типов триггеров.
Определение триггеров базы данных и их использование.
Создание триггеров баз данных.
Строковые и операторные триггеры на таблицах.
Триггеры на представления, INSTEAD OF.
Правила срабатывания триггеров базы данных.
Удаление триггеров базы данных.
10
Триггеры на DDL-предложения и на события в базе данных
Создание триггеров на DDL-предложения.
Триггеры, срабатывающие по системным событиям в базе данных.
Ограничения на триггеры базы данных.
Триггеры LOGON и LOGOFF.
Предложение CALL в триггере.
Рекомендации по конструированию триггеров.
11
Использование PL/SQL-компилятора
Инициализационные параметры для PL/SQL-компиляции.
Предупреждения времени компиляции.
Пакет DBMS_WARNING.
Предупреждающее сообщение PLW 06009.
12
Управление кодом PL/SQL
Параметр настройки PLSQL_CCFLAGS.
Пакет DBMS_DB_VERSION.
Условная компиляция.
Сокрытие кода (Obfuscation).
Утилита свертки.
Пакет DBMS_DDL.
13
Отслеживание зависимостей
Обзор объектных зависимостей.
Процедурные зависимости в представлениях словаря данных.
Оценка влияния изменений объектов БД на хранимые процедуры.
Использование представлений USER_DEPENDENCIES и DEPTREE.
Управление локальными и удаленными зависимостями.
Установка значения инициализационного параметра REMOTE_DEPENDENCIES_MODE.
Чему вы научитесь
01
Научитесь основным концепциям PL/SQL, включая синтаксис, структуру блоков кода и управление потоком выполнения
02
Освоите методы создания и использования процедур и функций в PL/SQL для выполнения повторяющихся задач
03
Научитесь обрабатывать исключения в PL/SQL, включая использование блоков
04
Освоите методы работы с курсорами, включая явные и неявные курсоры
05
Научитесь применять лучшие практики для оптимизации производительности PL/SQL-кода, включая использование пакетных операций и минимизацию количества обращений к базе данных