Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы на ГОСЫ.docx
Скачиваний:
131
Добавлен:
10.05.2015
Размер:
808.24 Кб
Скачать

2. Принципы построения реляционной бд. Состав реляционной субд. Фундаментальные свойства реляционных отношений.

Реляционная база данных – набор отношений, имена которой совпадают с именами схем отношений, определенных в базе данных.

При проектировании базы данных необходимо решить 3 основные задачи:

1. Выбрать способ отображения объектов предметной области в виде объектов модели данных, чтобы эта отображение не противоречило законам предметной области и было по возможности эффективным, удобным. Эту задачу называют задачу логического проектирования.

2. Установить необходимый состав запросов, выполняемых в базе и разрабатывать эффективный метод их реализации. При этом необходимо учитывать особенности конкретной СУБД, наличие дополнительных данных хранимых процедур, и т.д.

3. Разработать интерфейс. Удобный для пользователя: выполнения запросов, отчеты. Эта задача не является непосредственной задачей проектирования базы данных, однако её решение обеспечит эффективное использование ресурсов данных.

Согласно Дейту [1], реляционная модель баз данных состоит из трех частей:

1. В структурной части

2. В манипуляционной части

3. В целостной части

В структурной части модели фиксируется, что единственный структурой данных является реализованное n-арное отношение.

Манипуляционная часть включает механизмы манипулирования реляционными базами данных: реляционная алгебра и реляционное исчисление.

Реляционная алгебра основана на теории множеств и включает операции теории множеств.

Реляционное исчисление основано на аппарате алгебры логики и его раздела предикатного исчисления.

Целостная часть фиксирует 2 требования целостности, которые должны поддерживается в любой реляционной СУБД:

Требования целостности сущности. Данное требование соответствует первому свойству отношения – отсутствия кортежа дубликатов.

Требование целостности по ссылкам. Для того чтобы задать связь двух отношений, используется вторичный ключ (внешний). Внешний ключ содержит значение первичного ключа некоторой таблицы, с которой связана данная таблица.

С помощью внешних ключей одно отношение связывается с картежами другого отношения (базового). В базовом отношении этот ключ выступает в качестве первичного ключа.

Требование целостности по ссылкам подразумевает, что для каждого значения внешнего ключа должно найтись значение первичного ключа с таким же значениями, либо – значение должно на что-то указывать. При обновлении ссылающегося отношения (вставки новых кортежей) модификации внешнего ключа необходимо следить, чтобы не появились некорректные значения внешнего ключа. Особая ситуация возникает при удалении кортежей из отношения, на которую ведет ссылка. Для обеспечения целостности существует три подхода:

1. Запрещается удалять кортеж, на который указывает ссылка, т.е. сначала необходимо или удалить ссылающиеся кортежи, или изменить значения их внешних ключей.

2. В кортежах, в которых существует ссылки на удаляемый кортеж, значения внешнего ключа устанавливается как неопределённое.

3. При удалении кортежа из отношения, на которое ведет ссылка, из ссылающегося отношения удаляются все ссылающиеся на удаляемый кортеж кортежи.

Фундаментальные свойства отношений.

Под фундаментальными свойствами отношений подразумеваются свойства-аксиомы, на которых строятся отношения реляционной модели.

1.Отсутствие кортежей дубликатов (отношение – множество кортежей, а в множестве одинаковых элементов быть не может). Из данного свойства вытекает наличие у каждого отношения первичного ключа, то есть набора атрибутов, значение которых однозначно определяют отдельный кортеж. При формировании первичного ключа требуется обеспечить его минимальность, т.е. необходимо выбрать минимальный набор атрибутов, по которым можно отличить, один кортеж от другого. В некоторых реляционных СУБД допускается нарушение свойств уникальности кортежей.

2.Отсутствие упорядоченности кортежей отношения. Так как отношение - множество кортежей, то между ними нет упорядоченности по определению. Отсутствие упорядоченности даёт дополнительную гибкость при хранении данных и при выполнении запросов. При необходимости упорядочивания данных используются специальные вспомогательные данные, индексы.

3.Отсутствие упорядоченности атрибутов в оношении. Атрибуты в отношении также не упорядочены. Для доступа к значению, какого либо атрибута используется не номер атрибута, а его имя. Отсутствие упорядоченности атрибутов теоретически позволяет легко модифицировать схему отношении.

4.Атомарность значения атрибутов. Никакой атрибут не может в качестве своего значения иметь структурные данные (отношения).