Курс: Профессиональное использование SQL и PL/SQL в Oracle 11g-19с

Курс: Профессиональное использование SQL и PL/SQL в Oracle 11g-19с

Курс: Профессиональное использование SQL и PL/SQL в Oracle 11g-19с


Продолжительность курса: 40 ак. ч.

Описание курса:
Цель: по окончанию курса слушатели смогут создавать приложения и запросы на SQL и PL/SQL на новом, современном уровне.
Задачи: показать новые архитектурные особенности сервера Oracle 11g, 12C и его тонкую настройку с точки зрения разработчика серверной части приложения с использованием SQL/PLSQL. Новые возможности SQL и PL/SQL. Настройку производительности SQL запросов. Мониторинг и трассировку SQL. Разработку Web приложений средствами PL/SQL.

Аудитория:
Профессиональные разработчики PL/SQL, желающие упорядочить свои знания в PL/SQL и разрабатывать приложения, соответствующие современным стандартам.

Необходимая подготовка:
Знание Pl/SQL, основы программирования Oracle сервера.

Программа курса:
Модуль 1. Oracle 11, 19 – интегрированная и контейнерная база данных. Логическая и физическая компоновка базы данных. Процессы управления. Архитектура табличных пространств. Оптимальное использование памяти сервером. Понятие параллельного сервера. TNS адресаты. Настройка процессов прослушивания. NLS_LANG и настройка многоязыковой поддержки – особенности.  Новые возможности Oracle 19с (обзор).

Модуль 2. Новые типы данных 11g, 19c. Функции для работы с TimeStamp Рациональное использование табличных пространств для размещения больших объектов. Использование объектных и агрегатных типов для хранения данных.  

Модуль 3. SEL ECT. Использование подзапросов во фразе Fr om. Подзапросы. Коррелированные подзапросы. Древовидные структуры. Новые конструкции во фразе SELECT. (rollup, cube, case…). Аналитические функции в запросах. Вложенные таблицы (CURSOR) в операторе SELECT.

Модуль 4. Язык манипулирования данными DML. выполнения сложных операторов DML с подзапросами. Оператор Merge.

Модуль 5. Оптимизация SQL запросов: Настройка производительности приложения. Разделяемый пул и глобальная рабочая область. Oracle оптимизатор. Команда Analyze. COST и RULE оптимизация. Организация и планирование сбора статистики по объектам схемы. Построение диаграмм распределения данных в таблицах. Указатели (HINTS) оптимизатору. Ранжирование методов доступа. Анализ запросов с целью повышения скорости их выполнения, задание режимов оптимизации. команда Explain Plan и алгоритмы ее использования. Правила оптимизации запросов и их оценка. Практические примеры оптимизации, Новые возможности Oracle  при описании Hints (подсказок). Oracle  – самонастраиваемая база данных. Обеспечение мониторинга изменений в таблицах. Автоматический сбор статистики по таблицам

Модуль 6. Язык DDL. Создание и изменение таблиц (DDL). Команда Cre ate   Table. Определение параметров хранения таблиц на физическом уровне. Локальное управление табличными пространствами. Сегменты, экстенты, блоки. Параметры блоков хранения данных. Векторное хранение колонок в памяти сервера — технология InMemory

Модуль 7. Создание временных транзакционных и сессионных таблиц. Создание таблиц с разбивкой на партиции. Ссылочные партиционные таблицы. Глобальные и локальные индексы. Индексные таблицы. Доступ к данным в индексных таблицах, проблемы обновления данных. Особенности размещения индексных таблиц в физических блоках дисковой памяти. Таблицы, организованные как внешние.

Модуль 8. Декларативные ограничения целостности. Индексы и ограничения. “Откладываемые” ограничения целостности и проблемы каскадного обновления первичных ключей. Команда SET CONSTRAINT. Изменение структуры таблицы, команда Alt er   table и ограничения целостности. Создание неуникальных индексов для первичных и уникальных ключей. Мгновенное включение ограничений.

Модуль 9. Транзакции. Оптимистические и пессимистические запросы. Алгоритмы совместного доступа к базам данных. Конкуренция параллельность и согласованность. Транзакции и взаимовлияние. Потери изменений, черновое чтение, повторяемое и неповторяемое чтение. Уровни изоляции. Алгоритмы блокирования Oracle, уровни блокировок. Блокировки DML – табличные и строчные блокировки, тупики. Разрешения тупиков. Блокировки DDL-исключающие и разделяемые блокировки, многовариантность. Многовариантность и согласованность чтения на уровне транзакций. Ошибка - слишком старый моментальный снимок.

Модуль 10. Другие объекты. Представления. Ограничение представлений и правила их обновляемости, Instead off триггер. Индексы. Правила применения и рекомендации Oracle. Использование функций в индексах. Deterministic функции. Индексы и оптимизация. Необходимость использования индексов. Особенности хранения индексов на дисковом пространстве. Кластеры. Hash кластеры с сортировкой и кластеры одной таблицы. Необходимость использования. Практический пример преобразования некластеризованных таблиц в кластеризованные. Кластерные индексы. Связи с базами данных. Использование ролей для разграничения доступа к данным – безопасность.  Практический пример создания связей со схемами нескольких удаленных баз данных. Снимки и журналы снимков. Методы обновления. Материализованные представления данных. Принудительное обновление данных.

Модуль 11. Новые типы данных PL/SQL. Агрегатные типы данных (массивы и таблицы PL/SQL). Оператор BULK COLECT и операции DML. Извлечение данных из базы данных в PL/SQL таблицы – оператор BULK FETCH.  Преобразование типов данных. Ссылочные типы данных. Ассоциативные таблицы и правила доступа к их элементам.

Модуль 12. Курсоры. Явные и неявные курсоры. Атрибуты и параметры курсоров. Использование курсоров внутри управляющих блоков. Оператор CURSOR и фраза INTO. Обновляемые курсоры и транзакции.  

Модуль 13. Процедуры функции и пакеты. Ограничения для пользовательских SQL процедур. Зависимые процедуры и их сопровождение. Прагмы RESTRICT_REFERENCES, SERIALLY_REUSABLE. Зависимые пакеты. Использование хранимых функций в SQL запросах. Закрепление модулей в разделяемом пуле. Оптимизация. Автономные транзакции. Правила распространения автономных транзакций. Использование функций с автономными транзакциями в SQL запросах. Мутационные таблицы.

Модуль 14. Исключительные ситуации. Предопределенные и пользовательские исключительные ситуации. Явное возбуждение исключений. Процедура RAISE_APPLICATION_ERROR. Методика обработки ошибок в PL/SQL.

Модуль 15. Триггеры таблиц – как разновидность хранимых процедур. Атрибуты триггеров Oracle. Обработка исключительных ситуаций в триггерах. Триггеры базы данных и схем пользователя. Автономные транзакции в триггерах.

Модуль 16. Статический и динамический SQL. Почему “УМЕР” пакет DBMS_SQL. Четыре алгоритма выполнения динамического запроса. Динамическое выполнение DDL операторов. Связывание входных параметров и подготовка выходных переменных для DML операторов.

Модуль 17. Объектная опция Oracle. Наследование и полиморфизм, абстрактные классы. Создание собственных классов. Использование классов в PL/SQL. Классы в таблицах базы данных. Объектные таблицы. Ссылки на объекты и таблицы с полями типа REF OBJECT. Зависшие ссылки и их оптимизация. Вложенные таблицы и массивы. Оператор CAST и MULTISET. Представления с агрегированными типами данных. Наследование и полиморфизм в Oracle . Абстрактные типы. Оператор TREAT и привидение типов.

Модуль 18. Обзор использования основных пакетов базы данных: DBMS_PIPE, DBMS_JOB, DBMS_ALERT,  UTL_FILE, UTL_TCP, UTL_SMTP, UTL_HTTP.

Модуль 19. Пакет DBMS_DBWS для доступа к внешним сервисам по протоколу SOAP.

Модуль 20. Порядок компиляции PL/SQL в C код, а затем сборка в SO или DLL библиотеку.

Характеристики курса

  • Начало: 11 августа 2021
  • Окончание: 13 августа 2021
  • Вендор: Oracle
  • Код курса: Oracle19cSQL
  • Город: Екатеринбург, Пермь, Челябинск, Самара, Ижевск
  • Направление: Oracle
  • Академических часов: 40
  • Количество мест: 8
  • Очно: 47900 ₽
  • Дистанционно: 47900 ₽
Записаться на курс

Курсы повышения квалификации
и профессиональной переподготовки


График работы:
Мы отвечаем на звонки и письма в будние дни с 7:00 до 16:00 по Мск

Юридический адрес организации:
614010, г. Пермь, ул. Клары Цеткин, д. 14, офис 32

8 800 (600)-66-16

learning@eshift.ru