Улучшаемые навыки
PL/SQL
Oracle
Хранимые процедуры
Функции
Триггеры
Динамический SQL
Коллекции
Пакеты
Инструменты
Oracle SQL Developer
Чему вы научитесь
01
Создавать и модифицировать хранимые объекты PL/SQL
02
Использовать стандартные пакеты БД Oracle
03
Работать с динамическим SQL
04
Оптимизировать работу с объектными типами и коллекциями
05
Управлять транзакциями и исключениями для надежности данных.
Программа курса
Программные конструкции 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.
14
Итого на курс 32 часа: теория – 12 ч ( 38%), практика – 20 ч (62%)
Для кого
Дата-аналитик
Тестировщик
Разработчик
Предварительная подготовка
Знание SQL на уровне запросов SELECT/JOIN, основы языка Oracle PL/SQL
Расписание курсов
Курс проводят
Максимов Вадим
Эксперт в области СУБД Oracle
О тренере
Специалист с более чем 20-летним опытом администрирования СУБД Oracle, сертифицированный как Oracle Certified Professional (OCP) и Oracle Certified Expert (OCE). Имеет успешный опыт управления командами (отдел администрирования БД, центр компетенций) и выполнения роли независимого консультанта.
В настоящее время, занимает позицию ведущего системного администратора, отвечает за проекты разработки с использованием PL/SQL и осуществляет переход корпоративной инфраструктуры баз данных на PostgreSQL.