Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Материализованное представление
Временные таблицы Временные таблицы используются в Oracle для хранения данных, которые относятся к одной сессии или одной транзакции. Временные таблицы впервые появились в Oracle8I. Они предназначались для хранения данных на протяжении сеанса или транзакции. Отличительной особенностью этих таблиц являлось то, что они располагались во временных сегментах и данные в этих таблицах хранились только на период сессии или транзакции в зависимости от реализации. Поэтому они нашли большое применение в качестве промежуточных таблиц при расчётах, отчетах и оптимизации сложных запросов. Предложение ON COMMIT DELETE ROWSуказывает, что временная таблица предназначена для транзакции. В этом случае таблица будет очищена (будут удалены все строки) после каждой фиксации транзакции. Предложение ON COMMIT PRESERVE ROWS указывает, что временная таблица предназначена для сеанса. Она будет очищаться при завершении сеанса. Порядок создания инфраструктуры базы данных Oracle. создание табличных пространств; создание ролей; назначение ролям системных привилегий; создание профилей безопасности пользователей; создание пользователей (владелец и др. пользователи); назначение пользователям ролей; создание объектов базы данных (таблиц, индексов, представлений, функций, процедур, пакетов,...); назначение ролям объектных привилегий. PL/SQL: общая характеристика. Характеристика языка PL/SQL: процедурное расширение языка SQL; содержит элементы объектно-ориентированного программирования; блоки, процедуры, функции, пакеты, объектные типы; интегрирован с базой данных Oracle; интерпретация (режим по умолчанию): компиляция (промежуточный код на C и конечный объектный код процессора) дает выигрыш в скорости выполнения до 30%; среда выполнения: SQL*Plus, другие пакеты, сервер. Предупреждения компилятора: - ALL (все); - PERFOMANCE (производительность); - INFORMATIONAL (информационные); - SEVERE (логика программы); - Specific error (ошибка) Типы данных PL/SQL (не путать с типами данных базы данных): скалярные (Scalar); ссылочные (Reference); составные (Composite); большие объекты (LOB). Скалярные типы данных можно разбить на семейства: символ/строка; число; булев; дата/время.
IF-THEN; IF-THEN-ELSE; IF-THEN-ELSEIF; CASE WHEN; LOOP EXIT WHEN; FOR i in от..до LOOP; WHILE(условие)LOOP
SQLERRM – получить сообщение ошибки SQLCODE – получить код ошибки PL/SQL: курсоры (неявные и явные) Курсор Oracle – указатель на область в PGA (контекстная область) в которой хранится: 1)строки запроса, 2)число строк, 2)указатель на разобранный запрос в общем пуле. Открытие курсора–создание контекстной области PGA (создается моментальный снимок (snapshot) данных запроса). WHERE CURRENT OF – определяет только что считанную строку. ROWID-двухбайтовая величина, которая соответствует физическому положению любой строки БД. ROWNUM-используется для ограничения кол-ва выводимых записей. PL/SQL: исключения. Исключение – прерывание, которое возникает при наступлении какого-либо события. Встроенное исключение – исключение которое определено в СУБД. Пользовательское исключение – исключение, которое определил пользователь. RAISE - инициализация именованного исключения. RAISE_APPLICATION_ERROR - создает собственное сообщение об ошибке. 24. PL/SQL: константы, %TYPE, %ROWTYPE, записи %TYPE – используется для объявления переменной того же типа что и строка в необходимой таблице. %ROWTYPE – используется для объявления записи того же типа, что и строка в необходимой таблице, представлении или курсоре. Тип данных записи (RECORD) – тип данных, инкапсулирующий в себе несколько переменных одного или нескольких типов.
PL/SQL: локальные процедуры и функции.?????? Локальные процедуры и функции – такие процедуры и функции, которые создаются во время выполнения программы. PL/SQL: коллекции PL/SQL-коллекции: массивы переменной длинны – объект содержащий объекты одного типа(размер ограничен сверху, т.е. нужно его указать заранее) вложенные таблицы – таблицы, содержащие в себе строки, являющиеся объектами (в отличие от массивов переменной длинны размер не ограничен сверху) ассоциативные массивы – индексированные таблицы (массивы, доступ к которым осуществляется не по индексу, а по ключу) оператор над множествами MULTISET EXCEPT для извлечения из вложенной таблицы happyfamily родителей и поместим их имена во вложенную таблицу parents. Выведем содержимое таблицы parents. PL/SQL: динамический SQL Динамический sql – операторы sql, которые формируются и исполняются во время выполнения программы. Применяется для понимания кода, адаптирующегося к структуре таблиц. Предложение EXECUTE IMMEDIATE подготавливает (делает синтаксический разбор) и сразу же выполняет динамическое SQL-предложение или анонимный PL/SQL-блок.
|
||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2016-07-16; просмотров: 201; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.129.67.26 (0.008 с.) |