|
Академия -> Курсы -> Базы данных Oracle ->NEW! Oracle 10g: PL/SQL. Углубленный курс Описание курса | | |
Продолжительность: 5 дн. | Стоимость: 25 000 р |
|
Назначение курсадля опытных разработчиков приложений PL/SQL, которые хотят использовать все возможности языка. ПодготовкаЗнание основ SQL и PL/SQL Цель курсаОсновы языка не рассматриваются(предполагается, что слушатели ими владеют)
В курсе подробно рассматриваются, работа со сложными типами данных(коллекции, объекты, LOB,XMType, URI, ANY_), поддержка Интернет и Web, поддержка языка XML, динамический SQL, Bulk Binds, создание табличных и собственных агрегатных функции. Демонстрируются дополнительные возможности языка, обеспечиваемые поставляемыми Oracle пакетами. Программа курса
1-й День. Работа с данными |
| Большие объекты
Внешние LOB (B-FILE). Внутренние LOB(BLOB, CLOB). Способы загрузки/выгрузки LOB. Обработка LOB с использованием LOB PL/SQL API(DBMS_LOB).
Объектные типы
Объявление и инициализация объектов. Конструкторы.
доступ к атрибутам. Вызов методов. Динамическая диспетчеризация и перекрытие методов. Объектные ссылки. Оператор TREAT. манипулирование объектами через об.ссылки пакет UTL_REF.
Коллекции
Nested Table и Varray. Объявление типов и переменных, инициализация и обращения.
Сравнение и тестирование коллекций. Методы коллекций. Операции множеств на коллекциях(union, intersection, minus). Многоуровневые коллекции. Коллекции с объектами и объектными ссылками.
Предопределенные объектные типы
XMLType. Создание экземпляров и использование методов XMLType
Типы URI. Генерация URI
Типы ANY. Работа с типами ANY
|
|
2-й день. Взаимодействие с БД |
| Расширенная поддержка SQL:
Пакетный динамический SQL. (DBMS_SQL).
Встроенный динамический SQL (Native Dynamic SQL).
Массовое связывание операторов SQL (Bulk binds).
Bulk Dynamic SQL.
Использование курсорных переменных
Курсорные выражения
Выполнение подпрограмм в подтранзакциях:
Прагма Autonomous_transaction.
Разница в поведении автономных и рекурсивных(вложенных) транзакций
Обход ограничений на триггеры и функции, вызываемые из SQL.
Нарушения транзакционной семантики
«Пакетные» возможности:
Каналы и оповещения. DBMS_Pipe и DBMS_Alert
Работа с заданиями БД: DBMS_Job и DBMS_Scheduler
Перемещение сеанса в прошлое: DBMS_FLASHBACK
Создание собственных блокировок: DBMS_Lock
Шифрование и контроль целостности данных.
DBMS_OBFUSCATION_TOOLKIT, DBMS_CRYPTO
Сжатие данных. UTL_COMPRESS
Приостановка/возобновление выполнения операторов(Resumable Space Allocation ).
Работа с файлами. UTL_FILE и DBMS_FILE_TRANSFER |
|
3-й День. «Приграничные» возможности |
| Триггеры событий БД:
Использование атрибутов событий для реакции на события БД
Табличные функции – процедурные представления:
Передача данных с помощью Ref Cursor и операция TABLE.
Конвейерные табличные функции. Оператор PIPE ROW.
Параллелизация выполнения. Упорядочивание данных(data streaming)
Создание собственных агрегатных функций:
Интерфенйс ODCIAggregate. Последовательность и частотность вызова методов
Пример реализации
Расширение функционала: внешние подпрограммы
Внешние С-подпрограммы.
Хранимые процедуры Java
Использование COM Automation для обмена данными с MS OFFICCE (Excel, Word, Power Point)
Актуализация кэшированных данных с механизмом Database Change Notification
PL/SQL и XML:
PL/SQL-XML API: Parser API и DOM API. Обработка XML-документа со вставкой строк в реляционные таблицы. XSLT API
|
|
4-й день. Поддержка Интернет в PL/SQL |
| Взаимодействие по протоколу HTTP
Серверный функционал. Генерация динамического Web-контента
Использование внешнего(modplsql ) и встроенного(EPG) шлюза PL/SQLАНО Выгрузка и загрузка файлов
При использовании modplsql
При использовании EPG
Генерация HTML из PL/SQL.
PL/SQL Web Toolkit. Написание хранимых процедур, генерирующих Web-страницы,
построение страницы с помощью пакетов HTP/HTF.
Извлечение строк результатного набора.
Передача параметров. Доступные CGI-переменные.
Использование пакетов группы OWA_...
Drill Down отчеты
Построение интерактивной формы
Встраивание кода PL/SQL в HTML-страницы
Серверные страницы PL/SQL. PSP (PL/SQL Server Pages)
Синтаксические конструкции PSP: Директивы. Скриплеты. Декларации. Выражения.
Загрузка PSP.Утилита loadpsp
Клиентский функционал. Посылка запросов и получение ответов
Пакеты UTL_HTTP и UTL_URL
Пример реализации приложения B2B
Взаимодействие по протоколу SMTP
Отправка эл.письма из PL/SQL.
Пакеты UTL_SMTP и UTL_MAIL
Взаимодействие по протоколу TCP/IP
Клиент и сервер TCP/IP.
Пакеты UTL.TCP и UTL.INADDR
Создание Web-сервисов на хранимых процедурах PL/SQL
|
|
5-й день. За пределами кода |
| Использование памяти PL/SQL:
Области памяти: SGA, PGA, UGA, CGA. Курсоры PL/SQL.
Выделение, разделение и освобождение областей памяти.
Память пакетов. Пакеты SERIALLY_REUSABLE. Память под большими коллекциями.
Пакеты DBMS_SESSION и DBMS_SHARED_POOL.
Постразработка:
Условная компиляция и предупреждения времени компиляции.
Выполнение отладки.
Выполнение тестирования.
Выполнение трассировки. PL/SQL-трассировка. SQL-трассировка.
Выполнение профилирования.
Вспомогательные отладочные утилиты:
Регистрация приложений. DBMS_Application_Info
DBMS_DESCRIBE, DBMS_UTILITY (Format_Call_Stack, Get_Time, Name_Resolve)
Преобразование программ:
Встроенная С-компиляция.
Сворачивание кода (утилита WRAP, DBMS_DDL.CREATE_WRAPPED и DBMS_DDL.WRAP)
Управление процедурными объектами:
Закрепление процедурных обектов в памяти
Сброс состояния пакетов
Просмотр зависимостей
Удаленные зависимости
Перекомпилирование недействительных программных объектов
|
|
Академия -> Курсы -> Базы данных Oracle ->NEW! Oracle 10g: PL/SQL. Углубленный курс
|
|