Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1-43.docx
Скачиваний:
6
Добавлен:
01.03.2025
Размер:
327 Кб
Скачать
☆

Достоинства и недостатки реляционной модели данных

Главные достоинства реляционной модели данных – она проста для понимания, наглядна и имеет строгое математическое обоснование.

Недостатки следующие:

  • реляционная модель данных не допускает представления объектов со сложной структурой, поскольку в ее рамках возможно моделирование лишь с помощью двумерных таблиц;

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

В последнее время активно используются при разработке БД данных такие модели, как постреляционная, объектно-ориентированная, объектно-реляционная и многомерная модели.

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

Пусть таблица R1 связывается с таблицей R 2. Тогда таблица R1 именуется главной, а таблица R 2 – подчиненной. Ключевое поле главной таблицы называется первичным ключом, а подчиненной – внешним ключом.

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

В общем случае реляционная модель данных представляет множество взаимосвязанных таблиц. Графическое изображение связи между таблицами называется схемой данных.

Имеется таблица Заказы вида:

ЗАКАЗЫ

Номер

заказа

Код

клиента

Дата

заказа

Вес

заказа

1020

АБ

01.02.06

400

1021

АА

01.02.06

100

Нужно связать таблицы клиенты и заказы.

КЛИЕНТЫ ЗАКАЗЫ

Код клиента

Номер_заказа

Клиент

Код клиента

Адрес

Дата заказа

Вес заказа

Поле «Код клиента» таблицы клиенты является первичным ключом, а таблицы заказы – внешним.

15. Условия реляционной целостности

В реляционной модели данных должны выполняться условия целостности данных.

Условие «целостности таблиц» накладывает ограничения на значения первичного ключа – значения первичного ключа таблицы должны быть уникальными и непустыми.

Условие «ссылочной целостности» предполагает, что каждое значение внешнего ключа должно совпадать с одним из значений первичного ключа.

16. Операции реляционной алгебры

В процессе обработки реляционных таблиц СУБД выполняет операции реляционной алгебры такие, как объединение, пересечение, декартово произведение, разность, проекция, выборка, соединение, деление.

Операции объединения, пересечения, разности производятся над двумя исходными отношениями R1 и R 2, имеющими одинаковый состав и порядок атрибутов. Результатом является отношение такой же структуры.

Объединением двух отношений R1 U R2 называется отношение R, содержащее множество кортежей, принадлежащих либо R1, либо R2, либо обоим отношениям R1, R2 одновременно.

Пример 1

Пусть исходными отношениями являются отношения R1 и R2, которые содержат перечень номеров заказов и веса заказов, которые оформлялись двумя различными участками отдела сбыта:

R1 R2

Номер

заказа

Вес

заказа

Номер

заказа

Вес

заказа

1021

100

1021

100

1022

300

1022

300

1023

120

1024

500

1024

500

1025

300

1026

200

Тогда объединение R1 U R2 содержит общий перечень заказов, которые оформлялись в отделе сбыта:

R

Номер

заказа

Вес

заказа

1021

100

1022

300

1023

120

1024

500

1025

300

1026

200

Пересечением отношений R1  R2 называется отношение R, которое содержит множество кортежей, принадлежащих одновременно и R1, и R2.

Пример 2

Пусть отношения R1, R2 такие же, как в примере 1. Тогда пересечение R1 R2 содержит перечень заказов, которые оформлялись обоими участками отдела сбыта:

R

Номер

заказа

Вес

заказа

1021

100

1022

300

1024

500

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

Разностью отношений R1 и R2 называется отношение R, содержащее множество кортежей, принадлежащих R1 и не принадлежащих R2.

Пример 3

Пусть отношения R1, R2 такие же, как в примере 1. Тогда разность R1\ R2 содержит перечень заказов, которые оформлялись только на первом участке отдела сбыта:

R

Номер

заказа

Вес

заказа

1023

120

1026

200

Операции проекции, выборки, соединения, деления являются специальными операции реляционной алгебры.

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

Пример 4

Пусть отношение R есть таблица ЗАКАЗЫ, а подмножество Y включает два атрибута – «Номер заказа» и «Код клиента». Тогда проекцией PY (R) является отношение:

Номер

заказа

Код

клиента

1020

АБ

1021

АА

1022

АС

1023

АА

1024

АБ

Для операции выборки задается условие выборки кортежей булевым выражением (r), составленным из термов сравнения с помощью логических операций «И», «ИЛИ», «НЕ». Терм сравнения – выражение типа сравнения (в нем могут использоваться операции «=», «>», «<». «», «», «»). Результат операции выборки R[(r)] на отношении R есть отношение, включающее кортежи, для которых истинно заданное условие.

Пример 5

Требуется выбрать заказы с номером 1021 из отношения:

R1

Номер

заказа

Вес

заказа

Номер

участка

1021

100

1

1022

300

1

1023

120

1

1024

500

1

1026

200

1

1023

120

2

1021

100

2

1024

500

3

Тогда результатом выборки является отношение, содержащее кортежи, у которых номер заказа равен 1021:

R

Номер

заказа

Вес

заказа

Номер

участка

1021

100

1

1021

100

2

Операция соединения отношений R1  R2 А1=А2

выполняется путем сцепления кортежей отношения R1 с кортежами отношения R2 при условии совпадения значения атрибута А1 отношения R1 со значением атрибута А2 отношения R2 (А1, А2 – атрибуты, задаваемые для сцепления). При этом в результирующее отношение R одинаковые атрибуты включаются только один раз.

Пример 6

Пусть отношение R1 – это таблица КЛИЕНТЫ, а отношение R2 – таблица ЗАКАЗЫ. Тогда соединением отношений R1, R2 по «Коду клиента» будет отношение:

R

Код

клиента

Клиент

Адрес

Номер

заказа

Дата

заказа

Вес

заказа

АА

БГЭУ

Минск, пр-т Партизанский, 26

1021

01.02.06

100

АА

БГЭУ

Минск, пр-т Партизанский, 26

1023

20.03.06

120

АБ

Сименс

Мюнхен, ул. Лейбница, 8

1020

01.02.06

400

АБ

Сименс

Мюнхен, ул. Лейбница, 8

1024

28.05.06

600

АС

Атлант

Минск, пр-т Победителей, 61

1022

12.02.06

300

Операция деления выполняется над двумя отношениями R1, R2, имеющими атрибуты, определенные на одном домене. Пусть k1 – степень отношения R1, а k2 – отношения R2 и k1>k2. Тогда результат операции деления R1R2 есть отношение R степени k1-k2, любой кортеж которого вместе с любым кортежем R2 образует кортеж, имеющийся в R1.

Пример7

Пусть исходные отношения:

R1 R2

Код

произво-

дителя

Произво-

дитель

Мероприятие

Дата

Мероприятие

Дата

П1

Сименс

Рекламная акция

10.06.06

Рекламная

акция

10.06.06

П1

Сименс

Участие

в выставке

20.06.06

Участие

в выставке

20.06.06

П2

Атлант

Рекламная акция

10.06.06

П2

Атлант

Участие

в выставке

20.06.06

П3

Горизонт

Участие

в выставке

20.06.06

Тогда результатом операции деления R1R2 есть отношение :

R

П1

Сименс

П2

Атлант

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]