Детальна програма курсу
Введение
- Цели курса, план курса
- Таблицы учебной схемы Персонал (Human Resources, HR)
- Среда выполнения кода PL/SQL на сервере базы данных
- Документация Oracle Database 12c и дополнительные ресурсы
Введение в PL/SQL
- Преимущества и структура PL/SQL
- Обзор типов блоков PL/SQL
- Генерация вывода из блоков PL/SQL
Объявление идентификаторов в PL/SQL
- Различные типы идентификаторов в подпрограммах PL/SQL
- Описание и инициализация переменных
- Описание типов данных
- Атрибут %TYPE
- Связанные (bind) переменные
Исполняемые операторы
- Лексические единицы в блоке PL/SQL
- Функции SQL в PL/SQL
- Преобразование типов данных
- Вложенные блоки как выражения
- Ссылка на значение идентификатора во вложенном блоке
- Операторы в PL/SQL
- Использование последовательностей в выражениях PL/SQL
Использование операторов SQL внутри блока PL/SQL
- Использование операторов SQL в PL/SQL
- Извлечение данных в PL/SQL при помощи оператора SELECT
- Соглашения об именовании при извлечении данных и работе с операторами DML
- Изменение данных на сервере при помощи PL/SQL
- Концепции SQL-курсоров
- Атрибуты SQL-курсоров для обратной связи с операторами DML
- Фиксация и откат транзакций
Управляющие структуры
- Управление выполнением в PL/SQL
- Условное управление с использованием операторов IF и CASE
- Обработка неопределенных значений
- Использование булевых условий в логических операторах
- Контроль итераций в циклах
Работа с составными типами данных
- Составные типы данных: записи PL/SQL и таблицы
- Использование записей PL/SQL для хранения нескольких значений разных типов данных
- Вставка и обновление при помощи записей PL/SQL
- Ассоциативные массивы INDEX BY и методы работы с ними
Использование явных курсоров
- Определение курсора
- Управление явным курсором
- Использование явных курсоров для обработки строк
- Курсоры и записи
- Курсорные циклы FOR с подзапросами
- Атрибуты явного курсора
- Атрибуты %NOTFOUND и %ROWCOUNT
Обработка исключений
- Определение исключений
- Обработка исключений в PL/SQL
- Предопределенные исключения
- Перехват предопределённых и непредопределенных исключений сервера Oracle
- Функции, возвращающие информацию об исключениях
- Перехват исключений, определяемых пользователями
- Распространение исключений
- Оператор RAISE
Создание хранимых процедур и функций
- Представление о хранимых процедурах и функциях
- Различие между анонимными блоками и подпрограммами
- Демонстрация CREATE OR REPLACE PROCEDURE | FUNCTION
- Заголовочная часть хранимой процедуры и функции
- Создание простых процедур и функций
- Создание простой процедуры с параметром IN
- Вызов процедуры и функции