Меню
Главная
Авторизация/Регистрация
 
Главная arrow Информатика arrow Базы данных

Реляционные базы данных

Освоение свойств моделей данных (МД) осложняется тем, что в разных моделях данных используется своя терминология описания структурных элементов и их связей. Для упрощения изучения МД ниже приведены соответствующие термины в сравнении с понятиями, используемыми в реляционной модели данных.

Краткая характеристика структуры моделей данных

Модель данных

Элемент структуры

Связь

Структура таблицы

Реляционная

Таблицы: столбцы – поля, строки – записи

По ключу

Линейная

Иерархическая

Сегменты: исходный и порожденный – аналоги таблиц

По указателю

Линейная

Сетевая

Записи: владелец и член – аналоги таблиц

По указателю и по ключу (связь именуется); совокупность записей и связь образуют набор

Линейная, нелинейная

Объектно-реляционная

Объекты (таблицы, абстрактные типы данных)

По ключу

Линейная, нелинейная

Объектно-ориентированная

Классы объектов (типов данных, данных): объект – строка, столбцы – свойства (константы, встроенные объекты, потоки данных, коллекции, многомерные переменные, ссылки)

По объектной ссылке и объектному указателю

Линейная, нелинейная

При обсуждении моделей данных (гл. 5–9) будем придерживаться такой однотипной последовательности;

  • 1) логическая структура, включающая описание структуры (элементы, связи);
  • 2) создание БД в рамках рассматриваемой модели данных (МД);
  • 3) использование БД;
  • 4) свойства модели данных (достоинства и недостатки). Сравнительная таблица свойств МД приведена в гл. 9.

Логическая структура

Реляционные базы данных получили широкое распространение в персональных компьютерах. Наиболее известны такие локальные СУБД, как dBASE, Paradox и особенно – Access. СУБД Oracle, Sybase, Informix, BTrieve, Ingress, InterBase были изначально предназначены для работы в сети с большими объемами данных.

В основе реляционной модели лежит математическое понятие теоретико-множественного отношения, которое представляет собой подмножество декартова произведения списка доменов.

Домен – множество значений (например, множество целых чисел). Декартовым произведением доменов D1, D2, .., Dk (обозначается как D, × D2 × ... × Dk) называется множество всех кортежей (V1, V2, ..., Vk) длины к, таких, что Vi Î D1, i = I, I. Например, если k = 2, DÎ = {0, 1} и D2 = {а, b, с}, то D1 × D2 есть {(0, а), (0, b), (0, с), (1, а), (1, b), (1, с)), а отношением может быть, например, {(0, а), (О, с), (1, b)}.

Элементы отношения называются кортежами и имеют арность к (степень отношения), причем i-й компонентой является V1, Отношение удобно представлять таблицей – совокупностью всех кортежей; каждая строка есть кортеж и каждый столбец соответствует одному компоненту. Кортежи обычно нумеруются и их количество определяет размерность таблицы. Столбцы называются атрибутами, и им часто присваиваются имена. Упорядоченный список имен атрибутов отношения называется схемой отношения. Если отношение называется "Студент" и его схема имеет атрибуты А1, А1, .... Аk, то такую схему будем записывать как СТУДЕНТ(А1, А2, ..., Аk).

Совокупность схем отношений называется схемой (реляционной) БД, а текущие значения соответствующих отношений – БД.

Данные из диаграммы объектов-связей представляются двумя видами отношений.

  • 1. Набор объектов может быть представлен отношением, содержащим все атрибуты данного набора объектов. Если объекты набора идентифицируются с помощью связи с другим объектом, то схема отношения содержит дополнительно атрибуты ключа второго набора.
  • 2. Связь между наборами объектов Е1, Е2, Ек представляется отношением, схема которого состоит из атрибутов ключей каждого из этих наборов.

Реляционная модель есть представление БД в виде совокупности упорядоченных нормализованных отношений.

Для реляционных отношений характерны следующие особенности.

  • 1. Любой тип записи содержит только простые (по структуре) элементы данных.
  • 2. Порядок кортежей в таблице несущественен.
  • 3. Упорядочение значащих атрибутов в кортеже должно соответствовать упорядочению атрибутов в реляционном отношении.
  • 4. Любое отношение должно содержать один или более атрибутов, которые вместе составляют уникальный первичный ключ.
  • 5. Если между двумя реляционными отношениями существует зависимость, то одно отношение является исходным, второе – подчиненным.
  • 6. Чтобы между двумя реляционными отношениями существовала зависимость, атрибуты, служащие первичным ключом в исходном отношении, должны также присутствовать в подчиненном отношении.

Э. Кодд первоначально предложил 12 (дюжину) правил, фактически требований, которым должна удовлетворять реляционная база данных.

  • 1. Правило информации. Вся информация на логическом уровне представляется только значениями в таблицах без использования указателей и индексов.
  • 2. Правило гарантированного доступа. Каждый атомарный элемент таблицы доступен через комбинацию из имени таблицы, имени поля и ключа.
  • 3. Системная поддержка Null-значений. Для представления отсутствующих данных с любым типом используют Νull-значение.
  • 4. Динамический оперативный каталог на основе реляционной модели. Метаданные (словари) формируются теми же языками, что и данные.
  • 5. Правило исчерпывающего подъязыка данных. В базе данных возможно использовать несколько языков программирования, однако один (чаше всего – SQL) должен быть главным.
  • 6. Правило обновления представления (вида, View). Все теоретически обновляемые представления может обновлять и система.
  • 7. Ввод, обновление и удаление данных на высоком уровне. Работа с несколькими записями должна быть характерна не только запросам на выборку, но и запросам на обновление.
  • 8. Физическая независимость данных. Возможно изменение адреса БД, изменение физической компоновки БД не оказывая влияния на работу прикладных программ и пользователя.
  • 9. Логическая независимость данных. При добавлении или удалении элементов (таблиц, полей) в структуре БД другие части базы данных остаются неизменными.
  • 10. Независимость целостности. Ключ не должен иметь значения Null. Первичный и родительский ключи должны быть уникальными. Каждому значению внешнего ключа должно существовать значение родительского ключа. Ссылочная целостность уменьшает быстродействие из-за проверки условий-связей через словарь.
  • 11. Независимость распределения. В распределенной БД расположение данных независимо. Для пользователя такая БД должна выступать как централизованная БД.
  • 12. Правило соблюдения правил. Нельзя обходить ограничения, введенные с помощью языка SQL.

Пример 5.1. Представим БД "Учебный процесс" в виде реляционной модели (табл. 5.1). Далее отношения (например, табл. 5.1, а) будем записывать и в другой форме:

ГРУППА(Шифр группы. Название, Количество {студентов}, Средний_балл).

Подчеркнутый атрибут является ключевым.

Таблица 5.1

а) Отношение "Группа"

Шифр_группы

Название

Количество

Средний балл

1

И|1

16

4,3

2

И2

23

4,0

3

И3

18

4,2

б) Отношение "Студент"

Номер_эач_ки

Шифр_группы

ФИО студента

Год рождения

Средний балл

И-1746

1

Серой А.П.

1979

4,1

И-1747

2

Киров П.Г.

1980

4,0

И-1748

3

Сухов П.Н.

1981

4,5

в) Отношение "Кафедра:

Код кафедры

Название

Телефон

Зав. кафедрой

1

ИиУС

154-12-86

Сорокин П.В.

2

АПП

171-12-05

Борисов Б.В.

3

ТПП

212-10-81

Степанов И.В.

г) Отношение "Преподаватель"

Табел_номер

ФИО преподавателя

Уч_степень

Уч_звание

Код кафедры

381

Шаталов А.С

д.т. н.

Профессор

1

101

Сидоров А.Т.

К. т, н

Доцент

2

402

Тараканов П.Т.

к. ф.-м. н

Доцент

3

д) Отношение "Предмет"

Код предмета

Название

Всего часов

Практ/лаборатор

Семестрон

П1

Информатика

350

130

2

П2

Кибернетика

300

120

3

п3

Математика

600

200

4

е) Отношение "Изучение"

Шифр_группы

Кол предмета

Та6ел_номер

Вид занятий

Часы

2

П2

402

Практические

2

П2

381

Лекции

1

П3

381

Лекции

1

П3

401

Практические

ж) Отношение "Успеваемость"

Шифр_ группы

Номеру_ зач_кн

Код предмета

Табел_ номер

Вид занятий

Оценка

1

И-1746

П3

381

Экзамен

5

2

И-1747

П3

381

Экзамен

4

3

И-1748

П3

381

Экзамен

3

Схема связей БД

Рис. 5.1. Схема связей БД "Учебный процесс"

Процедуры создания и использования реляционных БД основываются на теории реляционных БД, подробно рассмотренной в гл. 4. Ее результаты используем в прикладных целях. При введении структуры данных используют соответствующие форматы данных. Для таблицы "Преподаватель" они представлены в табл. 5.2. Вся БД (табл. 5.1) представлена в 4НФ, поэтому отразим схему связей между ее отношениями (рис. 5.1), где подчеркнутые поля – первичные ключи. Уточненный (в процессе проектирования) перечень таблиц и полей с их форматами данных приведен в приложении 1, а схема связей – в гл. 5.

Таблица 5.2

Форматы типов данных отношения "Преподаватель"

Имя поля

Ключ

Уникальное поле

Обязательное поле

Тип данных

Размер

Подписи поля

Табел_номер

Первичный

Да

Да

Числовой

Целое

Таб N

ФИО преподавателя

-

Нет

Да

Текстовый

30

ПФИО

Уч_степень

-

Нет

Нет

Текстовый

12

Уч_ст

Уч_звание

-

Нет

Нет

Текстовый

12

Уч_зп

Код кафедры

Внешний

Нет

Да

Текстовый

6

Код_каф

 
Если Вы заметили ошибку в тексте выделите слово и нажмите Shift + Enter
< Предыдущая   СОДЕРЖАНИЕ   Следующая >
 

Популярные страницы