Тип связей на языке ER-диаграмм (Entity-Relationship, т.е. сущность-связь)

Пример: Если связь между сущностями МУЖЧИНЫ и ЖЕНЩИНЫ называется БРАК, то существует четыре возможных представления такой связи:

Рис. 15.

 

Традиционный брак, нотация IDEF1

 

Традиционный брак, нотация Yourdon’а

Рис. 16.

Множество связей между одними и теми же сущностями(фрагмент 5)

Пациент, имея одного лечащего врача, может иметь также несколько консультантов; врач может быть лечащим врачом нескольких пациентов и может одновременно консультировать нескольких пациентов.

Тернарные связи

Представленная выше диаграмма определяет, что врач может назначить несколько пациентов на несколько анализов; анализ может быть назначен несколькими врачами нескольким пациентам и пациент может быть назначен на несколько анализов несколькими врачами

Рекурсивные связи

Каждый Мужчина является сыном одного и только одного Мужчины (отца). Каждый Мужчина может являться отцом (а может быть и нет) для одного или более Мужчин.

 

66. Реляционная структура данных.

В конце 60х годов прошлого века появились работы, в которых обсуждались возможности применения таблиц даталогических данных. В 1970г. в статье Кодда был впервые применен термин «реляционная модель данных» и использован аппарат теории множеств. Он показал, что любое представление данных сводится к совокупности двумерных таблиц особого вида. Рис. 17. Отношение с математической точки зрения (Ai - атрибуты, Vi - значения атрибутов).

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

Если значения двух атрибутов берутся из одного и того же домена, то имеют смысл сравнения, использующие эти два атрибута, и нет в противном случае.

Отношение на доменах D1, D2,..., Dn (не обязательно, чтобы все они были различны) состоит из заголовка и тела. На Рис. 16приведен пример отношения для расписания движения самолетов.

Заголовок (ранее мы называли его интерпретацией) состоит из такого фиксированного множества атрибутов A1, A2,..., An, что существует взаимно однозначное соответствие между этими атрибутами Ai и определяющими их доменами Di (i=1,2,...,n).

Тело состоит из меняющегося во времени множества кортежей, где каждый кортеж состоит в свою очередь из множества пар атрибут-значение (Ai:Vi), (i=1,2,...,n), по одной такой паре для каждого атрибута Ai в заголовке. Для любой заданной пары атрибут-значение (Ai:Vi) Vi является значением из единственного домена Di, который связан с атрибутом Ai.

Степень отношения – это число его атрибутов. Отношение степени один называют унарным, степени два – бинарным, степени три – тернарным,..., а степени n – n-арным. Степень отношения "Рейс" (Рис. 16) – 8.

Кардинальное число или мощность отношения – это число его кортежей. Мощность отношения "Рейс" равна 10. Кардинальное число отношения изменяется во времени в отличие от его степени.

Поскольку отношение – это множество, а множества по определению не содержат совпадающих элементов, то никакие два кортежа отношения не могут быть дубликатами друг друга в любой произвольно-заданный момент времени. Пусть R – отношение с атрибутами A1, A2,..., An. Говорят, что множество атрибутов K=(Ai, Aj,..., Ak) отношения R является возможным ключом R тогда и только тогда, когда удовлетворяются два независимых от времени условия:

  1. Уникальность: в произвольный заданный момент времени никакие два различных кортежа R не имеют одного и того же значения для Ai, Aj,..., Ak.
  2. Минимальность: ни один из атрибутов Ai, Aj,..., Ak не может быть исключен из K без нарушения уникальности.

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

 

67. Реляционная база данных. Манипулирование реляционными данными.

Реляционная БД – совокупность отношений, соединяющая всю информацию, которая должна храниться в БД, однако пользователи могут воспринимать такую БД, как совокупность таблиц.

Рис. 18. Инфологическая модель БД «Питание»

Рис. 19. Инфологическая модель базы данных "Питание", построенная с помощью языка "Таблицы-связи"

Блюда
БЛ Блюдо Вид
  Лобио Закуска
  Харчо Суп
  Шашлык Горячее
  Кофе Десерт


Расход

БЛ Порций Дата_Р
    1/9/94
    1/9/94
    1/9/94
    1/9/94
... ... ...

 

Продукты
ПР Продукт Калор.
  Фасоль  
  Лук  
  Масло  
  Зелень  
  Мясо  
  Томаты  
  Рис  
  Кофе  


Рецепты

БЛ Рецепт
  Ломаную очищ
... ...

 

Состав

БЛ ПР Веc (г)
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     

 

Поставщики
ПОС Поставщик Город
  "Полесье" Киев
  "Наталка" Киев
  "Хуанхэ" Пекин
  "Лайма" Рига
  "Юрмала" Рига
  "Даугава" Рига

Города

Город Страна
Киев Украина
Пекин Китай
Рига Латвия

 

Поставки
ПОС ПР Вес (кг) Цена Дата_П
      0.45 27/8/94
      1.82 27/8/94
      0.61 27/8/94
      0.52 27/8/94
      2.18 27/8/94
      0.88 27/8/94
      0.37 24/8/94
      0.44 24/8/94
      2.87 24/8/94
      1.56 30/8/94
      2.05 30/8/94
      0.99 30/8/94

 

Рис. 20. База данных "Питание"

Замечания:

1. Каждая таблица состоит из однотипных строк и имеет уникальное имя.

2. Строки имеют фиксированное число полей (столбцов) и значений (множественные поля и повторяющиеся группы недопустимы). Иначе говоря, в каждой позиции таблицы на пересечении строки и столбца всегда имеется в точности одно значение или ничего.

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

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

5. Полное информационное содержание базы данных представляется в виде явных значений данных, и такой метод представления является единственным. В частности, не существует каких-либо специальных "связей" или указателей, соединяющих одну таблицу с другой. Так, связи между строкой с БЛ = 2 таблицы "Блюда" на рис. 3.2 и строкой с ПР = 7 таблицы продукты (для приготовления Харчо нужен Рис), представляется не с помощью указателей, а благодаря существованию в таблице "Состав" строки, в которой номер блюда равен 2, а номер продукта – 7.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: