- •Содержание
- •1. Архитектура базы данных. Физическая и логическая независимость (трехуровневая модель ansi).
- •2. Описать процесс прохождения пользовательского запроса.
- •3. Модели данных.
- •4. Пользователи баз данных. Основные функции группы администратора бд.
- •3. Задание ограничений целостности при описании структуры бд и процедур обработки бд:
- •4. Первоначальная загрузка и ведение бд:
- •5. Защита данных:
- •6. Обеспечение восстановления бд:
- •6. Этапы разработки аис.
- •I стадия – предпроектное обследование:
- •II стадия – проектирование:
- •III стадия – ввод системы в действие:
- •7. Режимы работы с базой данных.
- •8. Архитектура клиент-сервер: структура типового интерактивного приложения.
- •10. Реляционная алгебра. Теоретико-множественные операции реляционной алгебры. Основные операции.
- •11. Реляционная алгебра. Специальные операции.
- •12. Язык sql. История развития sql. Структура sql. Типы данных.
- •Структура sql.
- •Типы данных.
- •13. Операторы описания данных (ddl).
- •14. Операторы манипулирования данными (dml).
- •15. Язык запросов dql. Оператор выбора select.
- •16. Предикаты раздела where.
- •17. Null-значения, трехзначная логика.
- •18. Агрегатные функции в операторе выбора. Вложенные запросы.
- •19. Этапы жизненного цикла ис. Этапы проектирования бд.
- •20. Системный анализ предметной области.
- •21. Инфологическое моделирование. Er - модель.
- •22. Алгоритм перехода от er к реляционной модели данных.
- •23. Даталогическое проектирование, корректная схема бд.
- •25. Последовательность нормальных форм. Их свойства. Первая нормальная форма (1нф), вторая нормальная форма (2нф).
- •26. Третья нормальная форма (3нф).
- •27. Сурбд Oracle. Конфигурации Oracle. Архитектура Oracle (физический и логический уровень).
- •28. Субд Oracle. Табличные пространства. Сегменты, экстенты и блоки данных.
- •29. Объекты бд Oracle. Создание таблиц. Типы данных. Пользовательские типы данных.
- •30. Субд Oracle. Создание индексов.
- •31. Субд Oracle. Создание представлений.
- •35. Субд Oracle. Создание табличных пространств.
- •36. Основные понятия и конструкции pl/sql. Архитектура pl/sql.
- •37. Поддерживаемый набор символов pl/sql. Арифметические операторы и операторы отношения.
- •38. Структура программы и переменные pl/sql.
- •39. Pl/sql. Условные операторы if.
- •40. Pl/sql. Циклы.
- •41. Pl/sql. Курсоры. Курсорный цикл for.
- •42. Pl/sql. Хранимые процедуры.
- •43. Pl/sql. Функции.
- •44. Pl/sql. Триггеры.
41. Pl/sql. Курсоры. Курсорный цикл for.
Курсор – это средство извлечения данных из базы данных Oracle. Курсоры содержат определения столбцов и объектов (таблиц, представлений и т.п.) из которых будут извлекаться данные, а также набор критериев, определяющих какие именно строки должны быть выбраны.
Использование курсора в цикле FOR.
Вместо управления курсором операторами OPEN, FETCH и CLOSE язык PL/SQL предоставляет возможность последовательной обработки курсора в цикле FOR.
Цикл FOR с курсором выполняет следующие действия:
Неявно объявляет переменную цикла как запись %ROWTYPE.
Открывает курсор.
При каждой итерации извлекает следующую строку из результирующего набора в поля неявно объявленной записи.
По достижении конца результирующего набора закрывает курсор.
Например:
DECLARE
CURSOR c1 IS
SELECT f1, f2 FROM tbl2
WHERE f1 = 10;
BEGIN
- Неявное объявление rec1
FOR rec1 IN c1 LOOP
/* Выбрана следующая
строка таблицы */
INSERT INTO temp_tbl
VALUES (rec1.f2);
END LOOP;
COMMIT;
END;
42. Pl/sql. Хранимые процедуры.
Хранимая процедура (stored procedure) — это программа, которая выполняет некоторые действия с информацией в базе данных и при этом сама хранится в базе данных. В Oracle хранимые процедуры можно писать на языках PL/SQL и Java.
Хранимые процедуры могут входные параметры и возвращать результаты. В отличие от триггеров, которые принадлежат определенной таблице или представлению, хранимые процедуры принадлежат базе данных в целом. Они могут вызываться любым процессом, использующим базу данных, при условии, что у этого процесса есть достаточные права доступа.
Хранимые процедуры используются для многих целей. Хотя администраторы баз данных используют их для выполнения рутинных задач администрирования, главной областью их применения являются все же приложения баз данных. Эти процедуры могут вызываться из прикладных программ, написанных на таких языках, как Java, С#, С++ или VB.Net, а также из веб-сценариев, написанных на VBScript или JavaScript. Кроме того, эти процедуры можно вызывать в интерактивном режиме из командной оболочки SQL*Plus.
Можно выделить следующие преимущества хранимых процедур:
В отличие от кода приложений, хранимые процедуры никогда не передаются на клиентские компьютеры. Она всегда находится в базе данных и выполняются СУБД на том компьютере, где располагается сервер базы данных. Таким образом, они более безопасны, чем распространяемый код приложения, а кроме того, снижают сетевой трафик. Хранимые процедуры постепенно становятся предпочтительным режимом реализации логики приложения в сети Интернет и корпоративных интрасетях. Еще одно преимущество хранимых процедур заключается в том, что SQL-операторы в них могут быть оптимизированы компилятором СУБД.
43. Pl/sql. Функции.
Функция – это подпрограмма, которая вычисляет значение.
Агрегатные функции.
Функция |
Результат |
COUNT |
Количество строк или непустых значений полей, которые выбрал запрос. |
SUM |
Сумма всех выбранных значений данного поля. |
AVG |
Среднеарифметическое значение всех выбранных значений данного поля. |
MIN |
Наименьшее из всех выбранных значений данного поля. |
MAX |
Наибольшее из всех выбранных значений данного поля. |
Стандартные встроенные функции:
Функция |
Результат |
CURRENT_DATE |
Текущая дата. |
CURRENT_TIME(точность) |
Текущее время с указанной точностью. |
LOWER(строкa) |
Строка, преобразованная к нижнему регистру; |
SUBSTRING(строка FROM n FOR длина) |
Часть строки, начинающаяся с n-го символа и имеющая указанную длину. |
TRANSLАТЕ(строка USING функция) |
Строка, преобразованная с использованием, указанной функции. |
UPPER(строка) |
Строка, преобразованная к верхнему регистру. |