
- •История развития бд. Сравнить между собой этапы(файлы и файловые системы, бд на больших эвм, эпоха персональных компьютеров, распределенные базы данных)
- •Файлы и файловые системы
- •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
Программа на PL/SQL состоит из блоков (анонимных или поименованных). Блок может содержать вложенные блоки, называемые иногда подблоками. Общая форма PL/SQL-блока:
DECLARE
-- Описания блока, переменные, типы, курсоры и т. п. (опционально)
BEGIN
-- Непосредственно код программы
EXCEPTION
-- Обработка исключений (опционально)
END;
/* Многострочные
комментарии… */
-- Однострочный комментарий
[Править] Типы данных
Язык PL/SQL поддерживает следующие категории типов:
-
встроенные типы данных, включая коллекции и записи;
-
скалярные;
-
составные;
-
ссылочные;
-
LOB-типы;
-
-
объектные типы данных.
Операторы управления
-
операторы выбора:
IF - THEN - END IF;
IF - THEN - ELSE - END IF;
IF - THEN - ELSIF - END IF;
CASE - WHEN - THEN - END CASE;
-
операторы цикла:
LOOP - END LOOP;
WHILE - LOOP - END LOOP;
FOR - LOOP - END LOOP;
EXIT;
EXIT WHEN;
-
операторы безусловного перехода:
GOTO;
NULL;
«labels»
-
Pl/sql. Условные операторы if
Итак, попробуем использовать операторы ветвления. Самым простым в использовании, в PL/SQL является оператор IF. Его основная логическая форма имеет вид:
IF(некоторое условие справедливо) THEN
-- условие справедливо, выполнять это.
ELSE -- условие не выполняется
-- выполнять оператор в этой части.
END IF; -- конец условного оператора.
Первый блок оператора после IF-THEN называется "ПРЕДЫДУЩИМ", а блок следующий за ELSE "ПОСЛЕДУЮЩИМ". Каждый оператор IF-THEN может содержать обрамляющие блоки BEGIN - END, если в этом есть необходимость, так как при записи типа:
IF(некоторое условие справедливо) THEN
-- оператор 1
-- оператор 2
-- оператор 3
-- оператор 4
END IF; -- конец условного оператора.
Можно уверенно сказать, что все четыре оператора выполнятся наверняка!
-
Pl/sql. Циклы
На сегодня вы уже многое знаете о PL/SQL. Но очень многое еще впереди. Как и во всех языках программирования, в PL/SQL имеются операторы циклов. Их три основных типа:
-
Безусловные циклы (выполняемые бесконечно)
-
Интерактивные циклы (FOR)
-
Условные циклы (WHILE)
Самый простой тип цикла в языке PL/SQL таков:
LOOP
NULL;
END LOOP
/
Но использовать такой цикл нет смысла, да и для экземпляра БД это не безопасно. Для этого необходимо использовать определенные пути выхода из циклов. Их то же три:
-
EXIT - Безусловный выход из цикла. Используется посредством применения оператора IF.
-
EXIT WHEN - Выход при выполнении условия.
-
GOTO - Выход из цикла во внешний контекст.
-
Pl/sql. Курсоры
Необходима интеграция данных в код PL/SQL. Курсоры представляют собой способ обработки команд SQL, проверки их синтаксиса, подстановки переменных, создания плана выполнения, то есть, поиска пути к данным, а также выполнения и сохранения команд SQL в буфере.
Курсор — указатель на зарезервированный участок памяти в SGA, где обрабатываются SQL-предложения. Команда SQL загружается в буфер (в кэш-библиотеки). Буфер данных создаётся в разделяемом поле. Существует три основных типа курсоров: неявный, явный и курсорный цикл for.
Неявным называется курсор, в котором команда SQL определена без каких-либо операторов управления курсовом. SQL-запросы могут возвращать только одну строку.
SELECT Count (*) INTO l_emp_count FROM employee;
Неявные курсоры обязательно используются при работе с DELETE, UPDATE и INSERT.
Неявные работают быстрее явных.
Явные курсоры используются, когда ожидается что запрос может вернуть много или ни одной строки. Позволяют выполнить сложную логику при выборке каждой строки. Управление курсорами осуществляет программист в 4 этапа:
-
Объявление: DECLARE
-
Открытие: OPEN
-
Извлечение данных: FETCH (считать строку из множества, определённых курсором).
-
Закрытие курсора: CLOSE