Piszę z pytaniem, rozważam dwa podejścia, i nie wiem które wybrać. Chcę mieć model employee
. Pracownicy (employee
) będą należeć do jednej z kilku kategorii. Zależnie od kategorii, każdy z pracowników może mieć bardzo dużo atrybutów (200-1000). Pracownicy w tej samej kategorii będą mieli na pewno takie same atrybuty (z różnymi wartościami of course). Prawdopodobnie będzie dodawanych więcej atrybutów.
Wymyśliłem sobie to tak że mogę mieć tabele:
-
employees
(id
,name
,category_id
) -
categories
(id
,name
) -
attribute
(id
,name
,type
) - przykładowe recordy('Age', 'int')
,('City', 'string')
,('Sex', 'string')
-
category_attribute
(category_id
,attribute_id
,attribute_value
)
Ma to swoje wady bo attribute_value
będzie typem w którym może być wszystko.
Czy ma to jakiś sens takie podejście?