OU_19cPLSQL

Oracle Database 19c: PL/SQL Workshop

Oracle Database 19c: PL/SQL Workshop - это полный курс по PL/SQL, включающий введение в программирование и управление кодом на PL/SQL



70 000₽

Длительность

5 дней (40ч в неделю)

Доступ к курсу

Навсегда в личном кабинете

Документы

Удостоверение о повышении квалификации

Расписание

Дата и место проведения
Начало
Формат
Преподаватель
Стоимость

Слушатели научатся:

Объявлять переменные
Записывать исполнимые операторы
Использовать операторы SQL в программировании на PL/SQL
Слушателям будет предоставлен полный обзор языка PL/SQL

Программа курса

22 модуля
Введение

Обзор курса и учебная среда;

Структура и цели программы обучения;

Подключение к базе данных Oracle 19c;

Инструменты разработки: SQL Developer, SQL*Plus;



Введение в PL/SQL

Назначение и преимущества PL/SQL;

Структура блока PL/SQL: DECLARE, BEGIN, EXCEPTION, END;

Типы блоков: анонимные, именованные;

Выполнение блоков PL/SQL в SQL Developer;



Объявление переменных PL/SQL

Скалярные типы данных: VARCHAR2, NUMBER, DATE, BOOLEAN;

Атрибуты %TYPE и %ROWTYPE;

Переменные подстановки и привязки;

Последовательности в выражениях PL/SQL;



Написание исполняемых инструкций

Синтаксические правила блоков PL/SQL;

Операторы присваивания и выражения;

Вложенные блоки и области видимости;

Функции DBMS_OUTPUT.PUT_LINE для вывода;



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

Операторы SELECT INTO для выборки данных;

DML-операции: INSERT, UPDATE, DELETE в PL/SQL;

Управление транзакциями: COMMIT, ROLLBACK, SAVEPOINT;

Неявные курсоры и атрибуты SQL%ROWCOUNT, SQL%FOUND;



Написание управляющих структур

Условные операторы: IF-THEN-ELSIF-ELSE, CASE;

Простые и поисковые выражения CASE;

Циклы: LOOP, WHILE, FOR;

Вложенные циклы и метки;



Работа с составными типами данных

Записи PL/SQL (RECORD);

Коллекции: ассоциативные массивы (INDEX BY);

Вложенные таблицы и VARRAY;

Методы коллекций: COUNT, FIRST, LAST, NEXT;



Использование явных курсоров

Объявление, открытие, выборка и закрытие курсора;

Атрибуты курсора: %FOUND, %NOTFOUND, %ROWCOUNT, %ISOPEN;

Цикл FOR для курсоров;

Курсоры с параметрами;



Обработка исключений

Типы исключений: предопределённые, пользовательские;

Обработка исключений в секции EXCEPTION;

Распространение исключений во вложенных блоках;

Директива RAISE_APPLICATION_ERROR;

Прагма EXCEPTION_INIT;



Введение в хранимые процедуры и функции

Различия между анонимными блоками и подпрограммами;

Преимущества хранимых подпрограмм;

Параметры: IN, OUT, IN OUT;

Хранение подпрограмм в словаре данных;



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

Синтаксис CREATE PROCEDURE;

Параметры процедур и режимы передачи;

Вызов процедур из анонимных блоков и других подпрограмм;

Обработка исключений в процедурах;

Удаление и пересоздание процедур;



Создание функций

Синтаксис CREATE FUNCTION и оператор RETURN;

Вызов функций из SQL-запросов;

Ограничения на функции в SQL;

Различия между процедурами и функциями;

Рекомендации по использованию;



Отладка подпрограмм

Использование DBMS_OUTPUT для отладки;

Отладчик SQL Developer;

Компиляция с информацией для отладки;

Обработка ошибок компиляции: SHOW ERRORS;

Представления USER_ERRORS и USER_OBJECTS;



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

Компоненты пакета: спецификация и тело;

Синтаксис CREATE PACKAGE и CREATE PACKAGE BODY;

Публичные и приватные элементы пакета;

Инициализация пакета;

Перегрузка подпрограмм в пакетах;



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

Вызов элементов пакета;

Персистентное состояние пакетных переменных;

Курсоры пакетного уровня;

Прагма SERIALLY_REUSABLE;

Удаление пакетов;



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

Пакет DBMS_OUTPUT: вывод информации;

Пакет UTL_FILE: работа с файлами ОС;

Пакет DBMS_SQL: динамические запросы;

Пакет UTL_MAIL: отправка электронной почты;

Обзор других полезных стандартных пакетов;



Использование динамического SQL

Оператор EXECUTE IMMEDIATE;

Динамические DML и DDL;

Связываемые переменные в динамическом SQL;

Пакет DBMS_SQL для сложных сценариев;

Защита от SQL-инъекций: DBMS_ASSERT;



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

Типы триггеров: DML, INSTEAD OF;

Триггеры уровня строки и уровня оператора;

Новые и старые значения: :NEW и :OLD;

Условие WHEN для триггеров;

Порядок срабатывания триггеров;



Создание триггеров вида Compound, DDL и Event в базе данных

Составные (compound) триггеры;

Триггеры на DDL-события: CREATE, ALTER, DROP;

Триггеры на события базы данных: LOGON, STARTUP, SERVERERROR;

Применение триггеров для аудита и безопасности;



Рекомендуемые конструкции для кода PL/SQL

Стандарты именования переменных и подпрограмм;

Обработка ошибок как стандартная практика;

Использование BULK COLLECT и FORALL для производительности;

Избегание распространённых ошибок;

Рекомендации Oracle по написанию PL/SQL;



Настройка компилятора PL/SQL

Уровни оптимизации компилятора: PLSQL_OPTIMIZE_LEVEL;

Встроенная компиляция: PLSQL_CODE_TYPE;

Предупреждения компилятора: PLSQL_WARNINGS;

Условная компиляция;

Прагма INLINE;



Управление зависимостями

Прямые и косвенные зависимости объектов;

Состояния объектов: VALID и INVALID;

Представление USER_DEPENDENCIES;

Управление инвалидацией и перекомпиляцией;

Пакет UTL_RECOMP для массовой перекомпиляции;



Как проходит обучение на платформе ФОРС

[ 01 ]

Знакомство с платформой

Платформа учебного центра ФОРС предназначена для удобного и комфортного обучения. Доступ к материалам будет открыт сразу после приобретения курса, а также навсегда доступен в личном кабинете.

[ 02 ]

Обучение

Каждый раздел содержит уроки с теоретическими материалами в видео и текстовых форматах, а так же демонстрацию практических примеров от преподавателей. Самостоятельная работа поможет закрепить полученные знания.

[ 03 ]

Обратная связь и поддержка

Мы поддерживаем онлайн-ресурс, где слушатели всегда могут задать вопрос преподавателю или коллективно обсудить возможные проблемы с другими студентами. Вы всегда сможете получить необходимую информацию в личном кабинете.

[ 04 ]

Дипломы и сертификаты

Все документы об окончании курсов собраны в одном месте в электронном формате — вы всегда можете посмотретьи скачать их в личном кабинете.

Остались вопросы?

Оставьте свои контактные данные — мы с вами свяжемся и все расскажем

Нажимая на кнопку «Отправить», я принимаю условия Политики конфиденциальности, и даю согласие на обработку персональных данных

WhatsApp
Telegram