Казахстан, г. Алматы, ул. Шевченко 90, БЦ «Каратал», офис 53
Казахстан, г. Астана, ул. Иманова 19, БЦ Деловой Дом "Алма-Ата", офис 612

Даты проведения курса

Выберите удобное для вас число,
запишитесь на курс, заполнив простую форму

записаться на курс
направление: Database Application Development кол-во дней: 5
вендор: Oracle кол-во часов: 40
код курса: PrPL/SQL

Этот курс Oracle Database: Program with PL/SQL Ed 2 начинается с введения в PL/SQL, затем позволит вам оценить преимущества PL/SQL как мощного языка программирования. Прослушав лекции и выполнив практические занятия с инструкторами-разработчиками программных продуктов на технологиях Oracle, вы научитесь разрабатывать хранимые процедуры, функции, пакеты и многое другое.

Аудитория курса:

  • разработчики приложений;

  • администраторы базы данных;

  • разработчики;

  • разработчики форм;

  • разработчики PL/SQL;

  • разработчики порталов;

  • системные аналитики;

  • технические консультанты.

Вы научитесь

  • Условному управлению потоком исполнения кода (циклы, структуры управления).

  • Созданию хранимых процедур и функций.

  • Использованию пакетов PL/SQL для группировки и хранения связанных конструкций.

  • Создание триггеров для решения бизнес-задач. Использование стандартных пакетов PL/SQL, поставляемых Oracle, для автоматизации повседневных задач

  • Ввод-вывод, файловый ввод-вывод.

  • Создание пользовательских пакетов для приложений.

  • Написание динамического SQL-код для приложений.

Преимущества для изучивших курс
Вы сможете писать в вашем проекте быстрый, надежный, безопасный и простой в управлении код, выполняющихся с максимальной производительностью. Сможете оптимизировать рабочие нагрузки базы данных, снизить затраты на ИТ и повысить качество обслуживания за счет консолидации данных базах данных в облачной инфраструктуре.

Использование Oracle SQL Developer
Для разработки этих программных модулей будет использоваться Oracle SQL Developer. Утилита SQL*Plus представлена в этом курсе в качестве дополнительного инструмента. Важное замечание: этот курс представляет собой комбинацию из курсов Oracle Database: PL/SQL Fundamentals и Oracle Database: Develop PL / SQL Program Units.

Рекомендуемая подготовка
Необходимая предварительная подготовка

  • Oracle Database 12c R2: Introduction to SQL;

  • Oracle Database 12c R2: SQL Workshop I;

  • Oracle Database 12c R2: SQL Workshop II

Предполагаемые знания и навыки

  • Опыт программирования на языках программирования высокого уровня.

Цель курса:

  • Управление зависимостями между подпрограммами на PL/SQL.

  • Использование конструкций программирования на PL/SQL и условное управление потоком исполнения кода (циклы, структуры управления и явные курсоры).

  • Создание хранимых процедур и функций.

  • Использование условной компиляции для настройки функциональности приложения на PL/SQL без удаления исходного кода.

  • Использование поставляемых Oracle пакетов PL/SQL для создания вывода на экран, ввода-вывода файлов и вывода почты. Автоматизация повседневных задач.

  • Написание динамического SQL для большей гибкости программных единиц.

  • Создание перегруженных подпрограмм пакета для большей гибкости.

  • Создание триггеров для решения бизнес-задач.

  • Создание и отладка хранимых процедур и функций.

  • Описание особенностей и синтаксиса PL/SQL.

  • Разработка анонимных блоков PL/SQL, которые могут эффективно выполняться.

  • Разработка пакетов PL/SQL для группировки связанных конструкций.

  • Обработка ошибок времени выполнения

 

Введение
Цель курса. Программа курса. Описание демонстрационной схемы - схемы управления персоналом. Среды разработки PL/SQL, доступные в этом курсе. Введение в SQL Developer.

Работа с облачным сервисом Oracle Cloud Exadata Express
Введение в Oracle Database Exadata Express Cloud Service. Доступ к облачной базе данных с помощью SQL Workshop. Подключение к Exadata Express с помощью клиентов базы данных.

Введение в PL/SQL
Обзор PL/SQL. Определение преимуществ подпрограмм PL/SQL. Обзор типов блоков PL/SQL. Создание простого анонимного блока. Как генерировать вывод из блока PL / SQL?

Объявление переменных PL/SQL
Перечисление различных типов идентификаторов в подпрограмме PL/SQL. Использование раздела деклараций для определения идентификаторов. Использование переменных для хранения данных. Определение скалярных типов данных. Атрибут type. Что такое bind-переменные? оследовательности в выражениях на PL/SQL.

Запись анонимных блоков PL / SQL
Описание основных принципов синтаксиса блоков PL/SQL. Как комментировать код? Развертывание функций SQL в PL/SQL. Как конвертировать типы данных? Опишите вложенных блоков. Определение операторов в PL/SQL.

Операторы SQL в блоке PL/SQL
Вызов инструкции SELECT в PL/SQL. Получение данных в PL/SQL. Концепция курсора SQL. Избегайте ошибок с помощью соглашений об именовании объектов при использовании инструкций Retrieval и DML. Обработка данных на сервере с помощью PL/SQL. Объяснение концепции курсора SQL. Использование атрибутов курсора SQL для получения обратной связи по DML. Сохранение и удаление транзакций.

Управляющие структуры
Условная обработка с использованием операторов IF. Условная обработка с использованием операторов CASE. Описание простого оператора цикла. Описание оператора цикла While. Описание оператора цикла. Использование оператора continue.

Составные типы данных
Использование типа запись в PL/SQL. Атрибут %ROWTYPE. Вставка и обновление записей PL/SQL. Индекс по таблицам. Изучение индексов табличными методами. Использование индекса по таблице записей.

Явные курсоры
Что такое явные курсоры? Объявление курсора. Открытие курсора. Извлечение данных из курсора. Закрытие курсора. Курсор в цикле. Атрибуты %NOTFOUND и %ROWCOUNT. Описание предложений FOR UPDATE и WHERE CURRENT.

Обработка исключений
Понимание понятия исключения. Обработка исключений с помощью PL/SQL. Захват предопределенных ошибок сервера Oracle. Захват не предопределенных ошибок Сервера Oracle. Захват пользовательских исключений. Распространение исключений. Процедура RAISE_APPLICATION_ERROR.

Хранимые процедуры
Создание модульного и многоуровневого дизайна подпрограмм. Модульная разработка с блоками PL/SQL. Понимание среды выполнения PL/SQL. Перечисление преимуществ использования подпрограмм PL/SQL. Перечисление различий между анонимными блоками и подпрограммами. Создание, вызов и удаление хранимых процедур. Создание процедур с параметрами и режимы параметров. Просмотр сведений о процедуре.

Хранимые функции
Создание, вызов и удаление хранимых функций. Определение преимуществ использования хранимых функций. Определение шагов для создания сохраненной функции. Вызов пользовательских функций в инструкциях SQL. Ограничения при вызове функций. Контроль побочных эффектов при вызове функций. Просмотр информации о функциях.

Отладка подпрограмм
Как отлаживать функции и процедуры? Отладка через SQL Developer.

Пакеты
Перечисление преимуществ пакетов. Описание пакетов. Каковы компоненты пакета? Как разработать пакет. Как включить видимость компонентов пакетов? Создание спецификации и тела пакета с помощью инструкции SQL CREATE и SQL Developer. Вызов конструкций пакета. Просмотр исходного кода PL/SQL с помощью словаря данных.

Развертывание пакетов
Перегрузка подпрограмм в PL/SQL. Использование стандартных пакетов. Использование прямых объявлений для разрешения неразрешенной ссылки на процедуру. Реализация функций пакета в SQL и ограничения. Постоянное состояние пакетов. Постоянное состояние курсора в пакете. Контроль побочных эффектов подпрограмм на PL/SQL. Вызов из PL/SQL таблиц записей в пакетах.

Реализация пакетов Oracle при разработке приложений
Какие пакеты поставляются Oracle? Примеры некоторых пакетов, поставляемых Oracle. Как работает пакет DBMS_OUTPUT? Использование пакета UTL_FILE для взаимодействия с файлами операционной системы. Вызов пакета UTL_MAIL. Написание своих подпрограммы с использованием UTL_MAIL.

Динамический SQL
Поток выполнения SQL. Что такое динамический SQL? Как объявить переменную курсора. Динамическое выполнение блока PL/SQL. Настройка собственного динамического SQL для компиляции кода PL/SQL. Как вызвать пакет DBMS_SQL? Реализуйте DBMS_SQL с параметризованным оператором DML. Функциональная полнота динамического SQL.

Рекомендации по разработке кода PL/SQL
Стандартизация констант и исключений. Понимание локальных подпрограмм. Запись автономных транзакций. Как реализовать hint (подсказку) компилятору nocopy. Вызов подсказки PARALLEL_ENABLE. Кэш результатов функции PL/SQL между сессиями. Детерминированное выполнение операторов языка с вызовом функций. Использование массового связывания для повышения производительности.

Триггеры
Описание триггеров. Определение типов событий срабатывания триггера и тело триггера. Сценарии бизнес-приложений для реализации триггеров. Создание триггеров DML с помощью инструкции CREATE TRIGGER и SQL Developer. Определите типов событий срабатывания триггера, тело триггера и время срабатывания. Различия между триггерами уровня оператора и триггерами уровня строки. Создание триггеров Instead of и инструкция Disabled. Как управлять, тестировать и удалять триггеры?

Создание триггеров базы данных типа Compound, DDL и Event
Что такое составные триггеры? Определение разделов временной точки составного триггера таблицы. Понимание структуры составного триггера для таблиц и представлений. Реализуйте составной триггер для устранения ошибки мутации данных в таблице. Сравнение триггеров базы данных с хранимыми процедурами. Создание триггеров для операторов DDL. Создание триггеров событий базы данных и системных событий. Системные привилегии, необходимые для управления триггерами.

Компилятор PL/SQL
Что такое компилятор PL/SQL? Описание параметров инициализации для компиляции PL/SQL. Перечисление новых предупреждений времени компиляции PL/SQL. Обзор предупреждений времени компиляции PL/SQL для подпрограмм. Перечисление преимуществ предупреждений компилятора. Перечисление категорий предупреждений о времени компиляции PL/SQL. Установка уровней предупреждений: с помощью SQL Developer, параметра инициализации PLSQL_WARNINGS и подпрограмм пакета DBMS_WARNING. Просмотр предупреждений компилятора: использование представлений SQL Developer, SQL*Plus или словаря данных.

Управление зависимостями
Обзор зависимостей объектов схемы. Запрос прямых зависимостей объектов с помощью представления USER_DEPENDENCIES. Запрос состояния объектов. Недействительность зависимых объектов. Отображение прямых и косвенных зависимостей. Управление зависимостями на уровне единичных элементов кода в базе данных Oracle 12c. Понимание того, что такое удаленная зависимость. Перекомпиляция программного модуля PL/SQL.