Математическая модель структуры Базы Данных

Автор работы: Пользователь скрыл имя, 20 Декабря 2010 в 21:52, реферат

Краткое описание

Математической моделью называется совокупность математических соотношений, уравнений, неравенств и т.п., описывающих основные закономерности, присущие изучаемому процессу, объекту или системе. Из всех существующих моделей баз данных наиболее под описание математической модели подходит реляционная модель базы данных.
Реляционная база данных - база данных, построенная на основе реляционной модели. В реляционной базе каждый объект задается записью (строкой) в таблице.

Содержимое работы - 1 файл

Web.doc

— 358.00 Кб (Скачать файл)

Таблица 13 Отношение A (Поставщики)

Номер детали Наименование  детали Y

(Статус  детали)

1 Болт 3
2 Гайка 2
3 Винт 1

Таблица 14 Отношение B (Детали)

Ответ на вопрос "какие поставщики имеют право  поставлять какие детали?" дает -соединение :

Номер поставщика Наименование  поставщика X

(Статус  поставщика)

Номер детали Наименование  детали Y

(Статус  детали)

1 Иванов 4 1 Болт 3
1 Иванов 4 2 Гайка 2
1 Иванов 4 3 Винт 1
2 Петров 1 3 Винт 1
3 Сидоров 2 2 Гайка 2
3 Сидоров 2 3 Винт 1

Таблица 15 Отношение "Какие  поставщики поставляют какие детали"

Экви-соединение

 

Наиболее важным частным случаем  -соединения является случай, когда есть просто равенство.

Синтаксис экви-соединения:

Пример 9. Пусть имеются отношения , и , хранящие информацию о поставщиках, деталях и поставках соответственно (для удобства введем краткие наименования атрибутов):

Номер поставщика

PNUM

Наименование поставщика

PNAME

1 Иванов
2 Петров
3 Сидоров

Таблица 16 Отношение P (Поставщики)

Номер детали

DNUM

Наименование  детали

DNAME

1 Болт
2 Гайка
3 Винт

Таблица 17 Отношение D (Детали)

Номер поставщика

PNUM

Номер детали

DNUM

Поставляемое  количество

VOLUME

1 1 100
1 2 200
1 3 300
2 1 150
2 2 250
3 1 1000

Таблица 18 Отношение PD (Поставки)

Ответ на вопрос, какие детали поставляются поставщиками, дает экви-соединение . На самом деле, т.к. в отношениях имеются одинаковые атрибуты, то требуется сначала переименовать атрибуты, а потом выполнить экви-соединение. Запись становится более громоздкой:

Обычно, такой  сложной формой записи не пользуются. Но как бы то ни было, в результате имеем отношение:

Номер поставщика

PNUM1

Наименование поставщика

PNAME

Номер поставщика

PNUM2

Номер детали

DNUM

Поставляемое  количество

VOLUME

1 Иванов 1 1 100
1 Иванов 1 2 200
1 Иванов 1 3 300
2 Петров 2 1 150
2 Петров 2 2 250
3 Сидоров 3 1 1000

Таблица 19 Отношение "Какие  детали поставляются какими поставщиками"

Недостатком экви-соединения является то, что если соединение происходит по атрибутам с одинаковыми наименованиями (а так чаще всего и происходит!), то в результатирующем отношении  появляется два атрибута с одинаковыми  значениями. В нашем примере атрибуты PNUM1 и PNUM2 содержат дублирующие данные. Избавиться от этого недостатка можно, взяв проекцию по всем атрибутам, кроме одного из дублирующих. Именно так действует естественное соединение.

Естественное  соединение

 

Определение 10. Пусть даны отношения и имеющие одинаковые атрибуты (т.е. атрибуты с одинаковыми именами и определенные на одинаковых доменах).

Тогда естественным соединением отношений и называется отношение с заголовком и телом, содержащим множество кортежей таких, что и .

Естественное соединение настолько важно, что для него используют специальный синтаксис:

Замечание. В синтаксисе естественного соединения не указываются, по каким атрибутам производится соединение. Естественное соединение производится по всем одинаковым атрибутам.

Замечание. Естественное соединение эквивалентно следующей последовательности реляционных операций:

  1. Переименовать одинаковые атрибуты в отношениях
  2. Выполнить декартово произведение отношений
  3. Выполнить выборку по совпадающим значениям атрибутов, имевших одинаковые имена
  4. Выполнить проекцию, удалив повторяющиеся атрибуты
  5. Переименовать атрибуты, вернув им первоначальные имена

Замечание. Можно выполнять последовательное естественное соединение нескольких отношений. Нетрудно проверить, что естественное соединение (как, впрочем, и соединение общего вида) обладает свойством ассоциативности, т.е.

поэтому такие соединения можно записывать, опуская скобки:

Пример 10. В предыдущем примере ответ на вопрос "какие детали поставляются поставщиками", более просто записывается в виде естественного соединения трех отношений (для удобства просмотра порядок атрибутов изменен, это является допустимым по свойствам отношений):

Номер поставщика

PNUM

Наименование  поставщика

PNAME

Номер детали

DNUM

Наименование детали

DNAME

Поставляемое  количество

VOLUME

1 Иванов 1 Болт 100
1 Иванов 2 Гайка 200
1 Иванов 3 Винт 300
2 Петров 1 Болт 150
2 Петров 2 Гайка 250
3 Сидоров 1 Болт 1000

Таблица 20 Отношение P JOIN PD JOIN D

Деление

 

Определение 11. Пусть даны отношения и , причем атрибуты  - общие для двух отношений. Делением отношений на называется отношение с заголовком и телом, содержащим множество кортежей , таких, что для всех кортежей в отношении найдется кортеж .

Отношение выступает в роли делимого, отношение выступает в роли делителя. Деление отношений аналогично делению чисел с остатком.

Синтаксис операции деления:

Замечание. Типичные запросы, реализуемые с помощью операции деления, обычно в своей формулировке имеют слово "все" - "какие поставщики поставляют все детали?".

Пример 11. В примере с поставщиками, деталями и поставками ответим на вопрос, "какие поставщики поставляют все детали?".

В качестве делимого возьмем проекцию , содержащую номера поставщиков и номера поставляемых ими деталей:

Номер поставщика

PNUM

Номер детали

DNUM

1 1
1 2
1 3
2 1
2 2
3 1

Таблица 21 Проекция X=PD[PNUM,DNUM]

В качестве делителя возьмем проекцию , содержащую список номеров всех деталей (не обязательно поставляемых кем-либо):

Номер детали

DNUM

1
2
3

Таблица 22 Проекция Y=D[DNUM]

Деление дает список номеров поставщиков, поставляющих все детали:

Номер поставщика

PNUM

1

Информация о работе Математическая модель структуры Базы Данных