Диаграмма взаимоотношений сущностей. Как отношение ISA переводится в таблицы?
Я просто задавался вопросом, как отношения ISA на диаграмме ER будут транслироваться в таблицы в базе данных.
Было бы 3 стола? Один для человека, один для ученика и один для Учителя?
Или было бы 2 стола? Один для ученика и один для учителя, причем каждая сущность имеет атрибуты человека + свои?
Или будет одна таблица со всеми 4 атрибутами, а некоторые из квадратов в таблице являются нулевыми в зависимости от того, был ли это учеником или учителем в строке?
ПРИМЕЧАНИЕ: Я забыл добавить это, но есть полное покрытие для отношений ISA, поэтому человек должен быть либо учеником, либо учителем.
Может ли атрибут PersonID быть как первичным ключом, так и внешним ключом в этой таблице Student? – Lana
@ Lana да, это прекрасно подходит для атрибута PK, а также для FK, ссылающегося на другую таблицу (и в этом случае это необходимо) –
Если Person-entity содержит много общих атрибутов для Student and Teacher, это все же хорошая идея разделите его на две таблицы? У вас были бы дубликаты атрибутов? Я собираюсь сохранить таблицу Person и иметь ссылку на нее, не имеющую нуля, от ученика и учителя. – Jake