Курс знакомит слушателей с языком PL/SQL и помогает оценить преимущества этого мощного языка программирования. Будет изучено создание блоков PL/SQL. Блоки могут быть использованы различными формами, отчётами и приложениями для обработки данных. Слушатели научатся создавать анонимные блоки PL/SQL, и получат представление о хранимых процедурах и функциях. Узнают, как объявлять переменные и обрабатывать исключения. Демонстрации наглядных примеров и практические работы укрепят знание основных концепций. В качестве инструмента разработки на курсе будет использоваться Oracle SQL Developer.
Слушатели изучают:
- Возможности и синтаксис PL/SQL
- Создание анонимных блоков PL/SQL
- Написание кода PL/SQL как интерфейса к базе данных
- Использование программных конструкций PL/SQL и контроль потока операций (циклы, управляющие структуры и явные курсоры)
- Обработку ошибок на стадии исполнения
- Создание хранимых процедур и функций
Необходимая предварительная подготовка:
- Представления о концепциях и методиках обработки данных
- Знакомство с языками программирования
- Oracle Database 12c: Основы SQL
- Технический английский язык
Аудитория курса:
Разработчики PL/SQL
Системные аналитики
Технические консультанты
Разработчики форм
Разработчики порталов
Все материалы по курсу предоставляются вендором на английском языке.
Введение
Цели курса, план курса. Таблицы учебной схемы «Персонал» (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. Вызов процедуры и функции.