
- •Глава I «Общие вопросы» Вопросы 1-6
- •История развития бд. Сравнить между собой этапы(файлы и файловые системы, бд на больших эвм, эпоха персональных компьютеров, распределенные базы данных)
- •История развития бд.
- •Файлы и файловые системы.
- •Базы данных на больших эвм.
- •Эпоха персональных компьютеров.
- •Распределенные базы данных.
- •Архитектура базы данных. Физическая и логическая независимость (трехуровневая модель ansi).
- •Описать процесс прохождения пользовательского запроса
- •Пользователи баз данных. Основные функции группы администратора бд
- •Пользователи баз данных.
- •Основные функции группы администратора базы данных.
- •Перечислить классы субд. Какие возможности обеспечивает использование профессиональных субд.
- •Этапы разработки аис.
- •Глава II «Архитектура бд, режимы работы» Вопросы 7-12
- •Режимы работы с базой данных.
- •Архитектура клиент-сервер: структура типового интерактивного приложения.
- •Модель fs.
- •Модель rda
- •Модель сервера баз данных
- •Модель сервера приложений
- •Глава III «Модели данных, язык описания данных, реляционная алгебра» Вопросы 13-19
- •Иерархическая модель данных. Язык описания данных иерархической модели. Внешние модели.
- •Иерархическая модель данных.
- •Язык описания данных иерархической модели.
- •Внешние модели.
- •Пример иерархической базы данных.
- •Язык манипулирования данными в иерархических базах данных. Операторы поиска данных. Операторы поиска данных с возможностью модификации. Операторы модификации данных.
- •Операторы поиска данных.
- •Операторы поиска данных с возможностью модификации.
- •Операторы модификации данных.
- •Обновить
- •Ввести новый экземпляр сегмента.
- •Сетевая модель данных. Язык описания данных в сетевой модели.
- •Сетевая модель данных.
- •15.2. Язык описания данных в сетевой модели.
- •Язык манипулирования данными в сетевой модели.
- •Реляционная алгебра. Теоретико-множественные операции реляционной алгебры. Основные операции (объединение, пересечение, разность, конкатенация кортежей, произведение)
- •18.1. Теоретико-множественные операции реляционной алгебры.
- •Реляционная алгебра. Теоретико-множественные операции реляционной алгебры. Специальные операции (выборка, проекция, соединение, деление).
- •Глава IV
- •Вопросы 20-27
- •Язык sql. История развития sql. Структура sql. Типы данных.
- •Язык sql. История развития sql.
- •Структура sql.
- •Типы данных.
- •Операторы описания данных (ddl).
- •Операторы манипулирования данными (dml)
- •Язык запросов dql. Оператор выбора select.
- •Предикаты раздела where
- •Null-значения. Трехзначная логика
- •Агрегатные функции в операторе выбора
- •Вложенные запросы.
- •Глава V «Проектирование бд» Вопросы 28-33
- •Проектирование реляционных бд на основе принципов нормализации:
- •Этапы жизненного цикла бд. Этапы проектирования бд
- •Системный анализ предметной области (два подхода к выбору состава и структуры предметной области)
- •Инфологическое моделирование. Er - модель (базовые понятия сущность, связь, типы связей: 1:1, 1:n, n:n, обязательная/необязательная).
- •Инфологическое моделирование.
- •Переход к реляционной модели данных (правила преобразования er-модели в реляционную).
- •Даталогическое проектирование. Перечень результирующих документов, корректная схема бд. Два пути проектирование схемы бд.
- •Глава VI «Нормальные формы» Вопросы 34-37
- •Последовательность нормальных форм. Их свойства. Первая нормальная форма (1нф), вторая нормальная форма (2нф),
- •Третья нормальная форма (3нф), нормальная форма Бойса-Кодда (бк нф),
- •Нф Бойса-Кодда.
- •Четвертая нормальная форма (4нф), пятая нормальная форма (5нф)
- •Глава VII «oracle (Теория)» Вопросы 38-42
- •Сурбд Oracle. Конфигурации Oracle. Типы пользователей. Основные обязанности dba.
- •Субд Oracle.
- •Конфигурации Oracle.
- •Типы пользователей.
- •Основные обязанности dba.
- •Архитектура Oracle (физический и логический уровень)
- •Субд Oracle. Табличные пространства. Сегменты, экстенты и блоки данных.
- •Онлайновые и офлайновые табличные пространства
- •Файлы данных
- •Сегменты, экстенты и блоки данных.
- •Сегменты.
- •Экстенты.
- •Блоки данных.
- •Экземпляр Oracle. Sga, pga
- •Процессы. 7 основных фоновых процессов Oracle
- •Пользовательские процессы
- •Процессы Oracle
- •Глава VIII «oracle (Практика)» Вопросы 43-49
- •Объекты бд Oracle. Создание таблиц. Типы данных
- •Объекты Oracle.
- •Создание таблиц.
- •Типы данных.
- •Субд Oracle. Создание индексов.
- •Субд Oracle. Создание представлений
- •Субд Oracle. Создание последовательностей
- •Субд Oracle. Определенные пользователем типы данных. Создание синонимов
- •Субд Oracle. Создание ограничений
- •Субд Oracle. Создание табличных пространств
- •Глава IX
- •Вопросы 50-58
- •Основные понятия и конструкции pl/sql. Архитектура pl/sql
- •Поддерживаемый набор символов pl/sql. Арифметические операторы и операторы отношения
- •Структура программы и переменные pl/sql
- •Pl/sql. Условные операторы if
- •Pl/sql. Циклы
- •Pl/sql. Курсоры. Курсорный цикл for.
- •Курсорный цикл for.
- •Pl/sql. Хранимые процедуры
- •Пример хранимой процедуры.
- •Pl/sql. Функции
- •Pl/sql. Триггеры
- •Пример триггера.
Структура программы и переменные pl/sql
Основная единица программы PL/SQL - это блок. Все программы PL/SQL состоят из блоков, которые могут быть вложены друг друга. Обычно, каждый блок соответствует какой-либо логической единице программы. Блок имеет следующую структуру:
DECLARE
/* Раздел описания: переменных, типов и подпрограмм. */
BEGIN
/* Раздел выполняемого кода: команды процедурного и SQL языков. */
/* Это единственный обязательный раздел */
EXCEPTION
/* Раздел обработки исключительных ситуаций: команды обработки ошибок. */
END;
Обязательным является только раздел выполняемого кода, все остальные – не обязательны.
В разделе выполняемого кода PL/SQL программы могут присутствовать только некоторые команды SQL. Это команды - SELECT, INSERT, UPDATE, DELETE и несколько других команд обработки данных и управления транзакциями. Команды определения данных, такие как CREATE, DROP или ALTER, в PL/SQL использовать нельзя. Выполняемый раздел может также содержать команды присваивания, ветвления, циклов, вызовов процедур и триггеров.
Программа PL/SQL и база данных обменивается информацией через переменные. Каждая переменная должна иметь тип. В качестве типа переменной может быть:
Один из типов, который используется в SQL для определения типа столбца.
Обобщенный тип, используемый в PL/SQL, подобный типу NUMBER.
Объявленный (пользовательский), но такой, какой имеет один из столбцов.
Наиболее часто используемый обобщенный тип – это NUMBER. В переменных типа NUMBER могут храниться как целые, так и вещественные числа. Наиболее обычно используемый символьный строковый тип - VARCHAR (n), где n - максимальная длина строки в байтах. Длина указывается обязательно, значения по умолчанию нет.
Например:
DECLARE
price NUMBER;
myBeer VARCHAR(20);
Типы в PL/SQL могут быть “базируемыми”. Во многих случаях, PL/SQL переменная будет использоваться, чтобы работать с данными, хранимыми в таблицах. В этом случае, необходимо, чтобы переменная имела тот же самый тип, что и столбец таблицы. Если имеется несоответствие типов, команды присваивания переменных и сравнения переменных могут выполниться не так, как ожидается. Чтобы избежать этого, вместо жесткого указания типа переменной, можно использовать оператор TYPE %.
Например:
DECLARE
myBeer Beers.name%TYPE;
После выполнения этой команды переменная myBeer будет иметь тот же тип, что и столбец name таблицы Beers.
Кроме этого, можно определить переменную-запись, составляющие которой имеют тип и длину, как и несколько столбцов таблицы. Самый простой способ определить такую переменную – это применить оператор %ROWTYPE к имени таблицы.
Например:
DECLARE
beerTuple Beers%ROWTYPE;
После выполнения этой команды переменная beerTuple будет переменной-записью с полями name и manufacture, такими же, как и в структуре таблицы Beers(name, manufacture).
Например:
DECLARE
a NUMBER := 3;
BEGIN
a := a + 1;
END;
.
run;
После выполнения этой программы не будет никакого эффекта, потому что нет никаких изменений в базе данных.