О чём курс
На курсе изучаются современные возможности PL/SQL по разработке и отладке PL/SQL-программ, наиболее эффективно взаимодействующих с базой данных и другими приложениями.
Слушатели научатся использовать все функциональные возможности курсоров, пакетов, больших объектов, коллекций и методов взаимодействия с другими приложениями. Рассмотрят вопросы написания оптимального кода, использования внешних подпрограмм, написанных на языках C и Java, применения механизма детального контроля доступа, а также защиты кода от SQL-внедрений.
Для
разработки используется Oracle SQL Developer.
Цели
После завершения обучения, слушатели будут:
писать код, взаимодействующий с другими приложениями и операционной системой;
создавать приложения, использующие коллекции;
применять механизм детального контроля доступа;
писать код, взаимодействующий с большими объектами (LOBs), и использовать SecureFile LOBs;
создавать оптимальные с точки зрения производительности программы.
Целевая аудитория
Разработчики.
Разработчики приложений.
Разработчики на языке PL/SQL.
Для кого
Разработчик
Улучшаемые навыки
Создание и использование пакетов PL/SQ
Использование триггеров
Работа с курсорами и коллекциями
Обработка исключений и отладка
Оптимизация производительности PL/SQL
Темы курса
Задачи курса
План курса
Описание сред разработки
Определение таблиц, данных и инструментов, используемых в данном курсе
02
Концепции программирования на языке PL/SQL: Обзор
Определение структуры блоков PL/SQL
Пакеты, процедуры и функции
Курсоры
Обработка исключений
Зависимости
03
Проектирование кода на PL/SQL
Описание предопределенных типов данных
Создание подтипов на основе существующих типов для приложения
Перечень различных инструкций для дизайна курсора
Описание переменных курсора
Белый список
Обзор коллекций
Использование ассоциативных массивов
Навигация с использование ассоциативных методов
Использование встроенных таблиц
Использование Varrays
Сравнение встроенных таблиц и Varrays
05
Использование коллекций
Написание программ на языке PL/SQL, в которых используются коллекции
Эффективное использование коллекций
Улучшение связей типов в PL/SQL
06
Манипуляции с большими объектами
Работа с LOBs
Обзор SecureFile LOBs
07
Использование методов усовершенствованного интерфейса
Вызов внешних процедур из PL/SQL
Преимущества внешних процедур
Способы вызова внешней подпрограммы из PL/SQL
Методы усовершенствованного интерфейса для языка C
Методы усовершенствованного интерфейса для Java
08
Производительность и настройка
Понимание и влияние компилятора
Настройка кода PL/SQL
Включение замещения внутри блока
Выявление проблем с памятью и настройка
Выявление сетевых проблем
09
Повышение производительности с помощью кэширования
Описание кэширования результатов
Использование кэширования результатов запросов в SQL
Использование кэширования функций в PL/SQL
Обзор условия для кэширования функций в PL/SQL
Поиск информации о кодировании
Концепции PL/Scope
Пакет DBMS_METADATA
Улучшения PL/SQL
11
Профилирование и отслеживание кода PL/SQL
Трассировка выполнения PL/SQL
Трассировка PL/SQL: Шаги
12
Внедрение VPD с детальным контролем доступа
Принципы работы детального контроля доступа
Описание функциональных возможностей детального контроля доступа
Описание контекста приложения
Создание контекста приложения
Настройка контекста приложения
Перечень процедур DBMS_RLS
Реализация политики
Запрос словарных представлений, содержащих информацию о детальном контроле доступа
13
Архитектура с несколькими арендаторами
Опция In-Memory базы данных Oracle
Чему вы научитесь
01
Научитесь разрабатывать пакеты, которые объединяют связанные процедуры и функции
02
Освоите методы создания и применения триггеров для автоматического выполнения действий при изменении данных в таблицах
03
Научитесь использовать явные и неявные курсоры для обработки наборов данных, а также работать с коллекциями
04
Освоите методы обработки исключений в PL/SQL, включая создание пользовательских исключений и использование отладочных инструментов
05
Научитесь применять лучшие практики для оптимизации производительности PL/SQL-кода, включая использование пакетных операций, индексов и эффективных алгоритмов