Ich entwickle ein Werkzeug, das (elektrische) Teile handhabt. Die Teile können erstellt, angezeigt, geändert, gelöscht, gruppiert usw. werden.
Um diese Frage für zukünftige Besucher nützlich zu machen, möchte ich diese Frage universell halten, da das Verwalten von Teilen in einer Datenbank sehr häufig ist, unabhängig davon, welche Teile sich in der Datenbank befinden (CDs, Autos, Lebensmittel, Studenten, ...).
Ich denke an 3 verschiedene DB-Designs:
Verwenden einer Teiletabelle und abgeleiteter Tabellen für spezielle Teileattribute.
Parts (id, part_type_id, name) PartTypes (id, name) Wires (id, part_id, lenght, diameter, material) Contacts (id, part_id, description, picture)Verwenden Sie nur spezielle Teiletabellen.
Wires (id, name, lenght, diameter, material) Contacts (id, name, description, picture)Verwenden einer Parts-, PartTypes-, ValueTypes- und PartValues-Tabelle, die alle Werte enthält.
PartTypes (id, name) ValueTypes (id, part_type_id, name) Parts (id, part_type_id, name) PartValues (part_id, value_type_id, value)
Welches bevorzugen und warum? Oder gibt es eine bessere?
Ich bin besorgt über die DB-Abfragen. Ich möchte nicht, dass die Abfragen zu langsam oder zu kompliziert werden.
Aktualisieren
Die Anzahl der Typen in der Datenbank ist ziemlich gegeben und statisch, da sie auf einem internationalen Standard beruhen und selten erweitert werden.