- •История развития бд. Сравнить между собой этапы(файлы и файловые системы, бд на больших эвм, эпоха персональных компьютеров, распределенные базы данных)
- •Файлы и файловые системы
- •I Этап — бд на больших эвм.
- •II этап —эпоха пк.
- •III этап: распределённые базы данных.
- •IV этап. Перспектива развития субд.
- •Архитектура базы данных. Физическая и логическая независимость (трехуровневая модель ansi).
- •Архитектура бд
- •Описать процесс прохождения пользовательского запроса
- •Пользователи баз данных. Основные функции группы администратора бд
- •Перечислить классы субд. Какие возможности обеспечивает использование профессиональных субд. Модели данных в субд
- •Этапы разработки аис.
- •Режимы работы с базой данных.
- •Архитектура клиент-сервер: структура типового интерактивного приложения
- •Модель fs;
- •Модель rda(удалённого доступа к данным)
- •Модель сервера баз данных
- •Модель сервера приложений
- •Классификация моделей данных (описать и прокомментировать все уровни).
- •Иерархическая модель данных. Язык описания данных иерархической модели. Внешние модели.
- •Язык манипулирования данными в иерархических базах данных. Операторы поиска данных. Операторы поиска данных с возможностью модификации. Операторы модификации данных. Операторы поиска данных.
- •Операторы поиска данных с возможностью модификации.
- •Сетевая модель данных. Язык описания данных в сетевой модели.
- •Разделы яод
- •Язык манипулирования данными в сетевой модели.
- •Реляционная алгебра. Теоретико-множественные операции реляционной алгебры. Основные операции (объединение, пересечение, разность, конкатенация кортежей, произведение)
- •Реляционная алгебра. Теоретико-множественные операции реляционной алгебры. Специальные операции (выборка, проекция, соединение, деление).
- •Язык sql. История развития sql. Структура sql. Типы данных.
- •Структура sql
- •Операторы описания данных (ddl).
- •Операторы манипулирования данными (dml)
- •Язык запросов dql. Оператор выбора select.
- •Выборка из одной таблицы
- •Предикаты раздела where
- •Null-значения. Трехзначная логика
- •Агрегатные функции в операторе выбора
- •Вложенные запросы.
- •Проектирование реляционных бд на основе принципов нормализации
- •Этапы жизненного цикла бд. Этапы проектирования бд
- •Системный анализ предметной области (два подхода к выбору состава и структуры предметной области)
- •Инфологическое моделирование. Er - модель (базовые понятия сущность, связь, типы связей: 1:1, 1:n, n:n, обязательная/необязательная).
- •Переход к реляционной модели данных (правила преобразования er-модели в реляционную).
- •Даталогическое проектирование. Перечень результирующих документов, корректная схема бд. Два пути проектирование схемы бд.
- •Последовательность нормальных форм. Их свойства. Первая нормальная форма (1нф), вторая нормальная форма (2нф),
- •Первая нормальная форма
- •Вторая нормальная форма
- •Третья нормальная форма (3нф), нормальная форма Бойса-Кодда (бк нф), Третья нормальная форма
- •Нормальная форма Бойса-Кодда
- •Четвертая нормальная форма (4нф), пятая нормальная форма (5нф) Четвертая нормальная форма
- •Пятая нормальная форма
- •Сурбд Oracle. Конфигурации Oracle. Типы пользователей. Основные обязанности dba.
- •Типы пользователей
- •Архитектура Oracle (физический и логический уровень)
- •Субд Oracle. Табличные пространства. Сегменты, экстенты и блоки данных.
- •Экземпляр Oracle. Sga, pga
- •Процессы. 7 основных фоновых процессов Oracle
- •Объекты бд Oracle. Создание таблиц. Типы данных
- •Субд Oracle. Создание индексов.
- •Субд Oracle. Создание представлений
- •Субд Oracle. Создание последовательностей
- •Техническая часть
- •Субд Oracle. Определенные пользователем типы данных. Создание синонимов
- •Субд Oracle. Создание ограничений
- •Субд Oracle. Создание табличных пространств
- •Основные понятия и конструкции pl/sql. Архитектура pl/sql
- •Поддерживаемый набор символов pl/sql. Арифметические операторы и операторы отношения Набор символов pl/sql
- •Структура программы и переменные pl/sql
- •[Править] Типы данных
- •Операторы управления
- •Pl/sql. Условные операторы if
- •Pl/sql. Циклы
- •Pl/sql. Курсоры
- •Pl/sql. Хранимые процедуры
- •Pl/sql. Функции
- •Pl/sql. Триггеры
-
Pl/sql. Хранимые процедуры
Храни́мая процеду́ра — объект базы данных, представляющий собой набор SQL-инструкций, который компилируется один раз и хранится на сервере. Хранимые процедуры очень похожи на обыкновенные процедуры языков высокого уровня, у них могут быть входные и выходные параметры и локальные переменные, в них могут производиться числовые вычисления и операции над символьными данными, результаты которых могут присваиваться переменным и параметрам. В хранимых процедурах могут выполняться стандартные операции с базами данных (как DDL, так и DML). Кроме того, в хранимых процедурах возможны циклы и ветвления, то есть в них могут использоваться инструкции управления процессом исполнения.
Сохраняемые процедуры похожи на определяемые пользователем функции (UDF). Основное различие заключается в том, что пользовательские функции можно использовать как и любое другое выражение в SQL запросе, в то время как сохраняемые процедуры должны быть вызваны с помощью функции CALL:
CALL процедура(...)
или
EXECUTE процедура(...)
Сохраняемые процедуры могут возвращать множества результатов, т.е. результаты запроса SELECT. Такие множества результатов могут обрабатываться, используя курсоры, другими сохраненными процедурами, возвращая указатель результирующего множества, либо же приложениями. Сохраняемые процедуры могут также содержать объявленные переменные для обработки данных и курсоров, которые позволяют организовать цикл по нескольким строкам в таблице. Стандарт SQL предоставляет для работы выражения IF, LOOP, REPEAT, CASE и многие другие. Сохраняемые процедуры могут принимать переменные, возвращать результаты или изменять переменные и возвращать их, в зависимости от того, где переменная объявлена.
Реализация сохраняемых процедур варьируется от одной СУБД к другой. Большинство крупных поставщиков баз данных поддерживают их в той или иной форме. В зависимости от СУБД, сохраняемые процедуры могут быть реализованы на различных языках программирования, таких, как SQL, Java, C или C++. Сохраняемые процедуры написанные не на SQL могут самостоятельно выполнять SQL-запросы, а могут и не выполнять. Все более широкое использование сохраняемых процедур привело к появлению процедурных элементов в языке SQL стандарта SQL:1999 и SQL: 2003 в части SQL/PSM. Это сделало SQL императивным языком программирования. Большинство СУБД предлагают собственные проприетарные и расширения производителя, сверх SQL/PSM.
Хранимые процедуры позволяют повысить производительность, расширяют возможности программирования и поддерживают функции безопасности данных.
-
Pl/sql. Функции
Вот теперь, наконец, давайте рассмотрим такое понятие как функции PL/SQL. Раньше в шагах мы с вами рассмотрели так называемые встроенные функции PL/SQL. А сейчас мы попробуем сами научится писать то, что называется функциями. По своей сути функция это то же, что и процедура, она может принимать параметры по всем тем же правилам, что и процедуры, и кроме всего она может возвращать значения! Но не применением OUT типа передаваемого параметра, а сама по себе. То есть функция, принимает параметры и возвращает одно(!), значение! В принципе в функции можно применять параметры с типом OUT - но это очень плохая идея! Такой метод я использовать не рекомендую! Определение функции таково:
-------------- CREATE [OR REPLACE] FUNCTION - имя_функции -------------------
-------------- (аргумент [IN] [OUT] [IN OUT] тип, ..... ) AS [IS] -----------
-------------- тело процедуры -----------------------------------------------
-------------- RETURN (возвращаемое_значение) -------------------------------