Нормализация ... К какой таблице принадлежит поле Address? - PullRequest
0 голосов
/ 17 февраля 2020

Я пытаюсь понять, как применить концепцию нормализации. Я работаю с этим примером, с которым я столкнулся онлайн.

ПЕРВЫЙ НОРМАЛЬНЫЙ ФОРМ… enter image description here

ОБРАЩЕНИЕ К ВТОРОЙ НОРМАЛЬНАЯ ФОРМА… imageenter image description here">

Мой вопрос об этом: как бы я узнал, если Address принадлежит Membership_Details_Table. Не кажется ли вам, что следующая схема будет лучше, если у участника несколько адресов?

**Table1**
MembershipID
Salutation
FullName

**Table2**
MembershipID
Address

**Table3**
MembershipID
BooksIssued

1 Ответ

0 голосов
/ 17 февраля 2020

Нет. Второй метод - просто дублирование информации о конкретном члене в двух разных таблицах. Иногда это полезно, но не для нормализации.

Возможно, что разные члены могут быть по одному адресу:

Участники

  • MembershipID
  • Приветствие
  • Полное имя
  • AddressId

Адреса

  • AddresssId
  • Адрес

Обратите внимание на разницу: таблица addresses имеет свой собственный идентификатор.

Или также возможно, что адреса меняются со временем. Это предполагает таблицу типа 2. Однако у ваших данных нет дат, так что это выходит за рамки этого вопроса.

...