
- •История развития бд. Сравнить между собой этапы(файлы и файловые системы, бд на больших эвм, эпоха персональных компьютеров, распределенные базы данных)
- •Файлы и файловые системы
- •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. Триггеры
-
Даталогическое проектирование. Перечень результирующих документов, корректная схема бд. Два пути проектирование схемы бд.
В реляционных БД даталогическое или логическое проектирование приводит к разработке схемы БД, то есть совокупности схем отношений, которые адекватно моделируют абстрактные объекты предметной области и семантические связи между этими объектами. Основой анализа корректности схемы являются так называемые функциональные зависимости между атрибутами БД. Некоторые зависимости между атрибутами отношений являются нежелательными из-за побочных эффектов и аномалий, которые они вызывают при модификации БД. При этом под процессом модификации БД мы понимаем внесение новых данных в БД или удаление некоторых данных из БД, а также обновление значений некоторых атрибутов.
Однако этап логического или даталогического проектирования не заканчивается проектированием схемы отношений. В общем случае в результате выполнения этого этапа должны быть получены следующие результирующие документы:
-
Описание концептуальной схемы БД в терминах выбранной СУБД.
-
Описание внешних моделей в терминах выбранной СУБД.
-
Описание декларативных правил поддержки целостности базы данных.
-
Разработка процедур поддержки семантической целостности базы данных.
-
Однако перед тем как описывать построенную схему в терминах выбранной СУБД, нам надо выстроить эту схему. Именно этому процессу и посвящен данный раздел.
-
Мы должны построить корректную схему БД, ориентируясь на реляционную модель данных.
ОПРЕДЕЛЕНИЕ
Корректной назовем схему БД, в которой отсутствуют нежелательные зависимости между атрибутами отношений.
Процесс разработки корректной схемы реляционной БД называется логическим проектированием БД.
Проектирование схемы БД может быть выполнено двумя путями:
-
путем декомпозиции (разбиения), когда исходное множество отношений, входящих в схему БД заменяется другим множеством отношений (число их при этом возрастает), являющихся проекциями исходных отношений;
-
путем синтеза, то есть путем компоновки из заданных исходных элементарных зависимостей между объектами предметной области схемы БД.
Классическая технология проектирования реляционных баз данных связана с теорией нормализации, основанной на анализе функциональных зависимостей между атрибутами отношений. Понятие функциональной зависимости является фундаментальным в теории нормализации реляционных баз данных. Мы определим его далее, а пока коснемся смысла этого понятия. Функциональные зависимости определяют устойчивые отношения между объектами и их свойствами в рассматриваемой предметной области. Именно поэтому процесс поддержки функциональных зависимостей, характерных для данной предметной области, является базовым для процесса проектирования.
Процесс проектирования с использованием декомпозиции представляет собой процесс последовательной нормализации схем отношений, при этом каждая последующая итерация соответствует нормальной форме более высокого уровня и обладает лучшими свойствами по сравнению с предыдущей.
Каждой нормальной форме соответствует некоторый определенный набор ограничений, и отношение находится в некоторой нормальной форме, если удовлетворяет свойственному ей набору ограничений.
В схеме базы данных для таблиц могут отображаться три отдельных элемента: строка заголовка, список выбора строк и набор свойств столбцов.
Строка заголовка. В строке заголовка отображается имя таблицы
Если таблица была изменена, но еще не сохранена, то после имени таблицы появляется звездочка (*), которая указывает наличие несохраненных изменений. Дополнительные сведения о сохранении измененных таблиц и диаграмм см. в разделе Работа со схемами баз данных.
Список выбора строк. Чтобы выбрать столбец базы данных в таблице, щелкните список выбора строк. Если столбец является первичным ключом таблицы, то в этом списке отображается символ ключа. Дополнительные сведения о первичных ключах см. в разделе Работа с ключами.
Столбцы свойств. Набор столбцов свойств отображается только в определенных представлениях таблицы. Таблицу можно просмотреть в любом из пяти различных представлений, позволяющих подобрать подходящий размер и размещение элементов схемы.
Дополнительные сведения о представлениях таблиц см. в разделе Практическое руководство. Настройка объема сведений, отображаемых в схемах.
Связи в схеме базы данных
Внутри схемы базы данных у каждой из связей есть три отдельных элемента: конечные точки, стиль линии и связанные таблицы.
Конечные точки. Конечные точки линии показывают вид связи: "один к одному" или "один ко многим". Если на одной конечной точке связи находится ключ, а на другой — цифра восемь, то это связь "один ко многим". Если у связи по одному ключу на каждой конечной точке, то это связь "один к одному".
Стиль линии. Вид линии (не ее конечные точки) показывает, проверяет ли СУБД ссылочную целостность для связи при добавлении новых данных в таблицу, связанную с помощью внешнего ключа. Если связь нарисована в виде сплошной линии, это значит, что СУБД проверяет ссылочную целостность для связи при добавлении или изменении строк в таблице, связанной с помощью внешнего ключа. Если линия отображается как пунктирная, это значит, что СУБД не проверяет ссылочную целостность для связи при добавлении или изменении строк в таблице, связанной с помощью внешнего ключа.
Связанные таблицы. Линия связи показывает, что две таблицы связаны с помощью внешнего ключа. Для связи "один ко многим" таблица, связанная с помощью внешнего ключа — это таблица, расположенная рядом с символом цифры 8 данной линии. Если обе конечные точки линии присоединены к одной таблице, это указывает рефлексивную связь. Дополнительные сведения см. в разделе Практическое руководство. Извлечение рефлексивной связи.
-
Эквивалентая схема БД. Понятия: Функциональная зависимость, транзитивная функциональная зависимость, возможный ключ отношения, первичный ключ отношения, Взаимно-независимые атрибут, детерминант отношения, аксиомы Армстронга. Многозначная зависимость в отношении, теорема Фейджина. Отношение, удовлетворяющее зависимости соединения.
В основе классического процесса проектирования лежит последовательность переходов от предыдущей нормальной формы к последующей. Однако в процессе декомпозиции мы сталкиваемся с проблемой обратимости, то есть возможности восстановления исходной схемы. Таким образом, декомпозиция должна сохранять эквивалентность схем БД при замене одной схемы на другую.
ОПРЕДЕЛЕНИЕ
Схемы БД называются эквивалентными, если содержание исходной БД может быть получено путем естественного соединения отношений, входящих в результирующую схему, и при этом не появляется новых кортежей в исходной БД.
При выполнении эквивалентных преобразований сохраняется множество исходных фундаментальных функциональных зависимостей между атрибутами отношений.
Функциональные зависимости определяют не текущее состояние БД, а все возможные ее состояния, то есть они отражают те связи между атрибутами, которые присущи реальному объекту, который моделируется с помощью БД.
Поэтому определить функциональные зависимости по текущему состоянию БД можно только в том случае, если экземпляр БД содержит абсолютно полную информацию (то есть никаких добавлений и модификации БД не предполагается). В реальной жизни это требование невыполнимо, поэтому набор функциональных зависимостей задает разработчик, системный аналитик, исходя из глубокого системного анализа предметной области.
Приведем ряд основных определений.
Функциональной зависимостью набора
атрибутов В отношения R от набора
атрибутов A того же отношения, обозначаемой
как R.A
R.B
или A
B
называется такое соотношение проекций R[A] и R[B], при котором в каждый момент времени любому элементу проекции R[A] соответствует только один элемент проекции R[B], входящий вместе с ним в какой-либо кортеж отношения R.
Функциональная зависимость R.A
R.B
называется полной, если набор атрибутов
B функционально зависит от A и не зависит
функционально от любого подмножества
A, то есть R.A
R.B
называется полной, если:
A1
A
R.A
-/
R.B,
что читается следующим образом:
для любого A1, являющегося подмножеством
А, R.B функционально не зависит от R.A, в
противном случае зависимость R.A
R.B
называется неполной.
Для функциональных зависимостей как фундаментальной основы проекта БД были проведены исследования, позволяющие избежать избыточного их представления. Ряд зависимостей могут быть выведены из других путем применения правил, названных аксиомами Армстронга, по имени исследователя, впервые сформулировавшего их. Это три основных аксиомы:
-
Рефлексивность: если В является подмножеством А, то А
B
-
Дополнение: если А
B , то A.C
B.C
-
Транзитивность: если A
B и B
C , то A
C.