Классика баз данных - статьи

       

Сколько имеется случаев?


При наличии введенного определения связи и того факта, что для каждой заданной связи имеется инверсная связь, сколько различных видов связей – или, скорее, их комбинаций – может разумно существовать с участием двух множеств A и B? Если использовать строчные буквы a и b для обозначения произвольных элементов A и B соответственно, то должно быть ясно, что:

  • Для заданного a может существовать не более одного b; в точности один b; не менее одного b или много b (т.е. M элементов b для некоторого M ≥ 0).
  • В каждом из этих случаев для заданного b может существовать не более одного a; в точности один a; не менее одного a или много a (т.е. M элементов a для некоторого M ≥ 0).

Следовательно, по первому впечатлению, имеется 16 комбинаций. На рис. 1 представлена сводка этих 16 случаев в форме матрицы; на рис. 2 они показаны графически, как их можно было бы представить, например, на диаграмме UML . хотя для соблюдения корректности следует сказать, что нотация на рис. 2 не точно следует нотации UML, хотя и близка к ней (см. ).

для b имеется → не более одного a точно один a не менее одного a M экземпляров a (M ≥ 0)
для a имеется ↓
не более одного b Case 1.1 Case 1.2 Case 1.3 Case 1.4
точно один b Case 2.1 Case 2.2 Case 2.3 Case 2.4
не менее одного b Case 3.1 Case 3.2 Case 3.3 Case 3.4
M экземпляров b (M ≥ 0) Case 4.1 Case 4.2 Case 4.3 Case 4.4

Рис. 1. 16 случаев в форме матрицы

Рис. 2. 16 случаев в графической форме

Рассмотрим реалистичные – до некоторой степени – примеры каждого из 16 случаев. Замечание: Может иметь смысл скопировать рис. 1 или рис. 2 и использовать его в качестве шпаргалки при чтении оставшейся части статьи.

1.1 Для каждого a имеется не более одного b, для каждого b имеется не более одного a.

Пример: В каждый заданный момент времени у заданного мужчины имеется не более одной жены, и у заданной женщины имеется не более одного мужа (предполагается отсутствие полигамии); однако у некоторых мужчин нет жен, а у некоторых женщин – мужей.



Содержание  Назад  Вперед