Můžete použít možnost 1, ale bez dalšího náhradního klíče.
Místo toho rozšiřte stávající primární klíč (každé entity) o EntityType
(řekněme CHAR(1)
, to by bylo E
pro události P
pro osoby D
pro produkty).
Sloučenina (EntityId, EntityType)
se pak stane primárním klíčem tabulky Entity
a odpovídající sloučeniny v dalších 3 tabulkách podtypů.
(EntityType
je pouze pomocná referenční tabulka se 3 řádky):