Kategorie-abhängigen Daten speichern

gyration4614

Neuer Benutzer
Beiträge
3
Hi,
ich arbeite in einem kleinen Familienbetrieb und wir produzieren Platinen.
Dafür haben wir ein kleines Lager mit elektronischen Bauteilen.
Dieses Lager wurde bisher in einer Excel Liste gepflegt.
Mittlerweile ist diese Liste über 1500 Zeilen lang und die Performance wird immer schlechter.

Ich möchte jetzt eine kleine Datenbankanwendung entwickeln, die diese Liste irgendwann ablösen soll.
Das programmieren ist weniger das Problem, aber ein sinnvolles Datenbank Design aufzustellen fällt mir schwer.
Ich habe keine Erfahrung mit Datenbanken, habe mich aber schon einige Stunden in das Thema eingelesen.
Ich würde das gerne erst mal mit SQLite machen.

So sehen die Daten aus:

Code:
Eigenschaften die alle Bauteile gemeinsam haben:
- Artikelnummer
- Bezeichnung
- Bauform
- Kategorie
- Lagerort

Eigenschaften die von der Kategorie abhängig sind
- Ein Kondensator hat z.B. diese Eigenschaften
    - Kapazität
    - Spannung
    - Toleranz

- Ein Widerstand hat z.B. diese Eigenschaften
    - Widerstand
    - Toleranz
    - Temperaturkoeffizient

Mir ist nicht ganz klar, was ich mit den kategorie-abhängigen Daten machen soll.

- Eine Tabelle mit allen Eigenschaften und nicht genutzte Felder einfach leer lassen.
- Eine Tabelle mit den gemeinsamen Eigenschaften und für jede Kategorie eine zusätzliche Tabelle.

Sind das legitime Optionen? Ersteres scheint wohl bad practise zu sein?
Was würdet ihr bevorzugen und warum?

Oder habt ihr bessere Ideen?
 
Werbung:
Du kannst das via EAV-Model machen, mehr hier: Entity-Attribute-Value Model (EAV)

Modernere Datenbanken wie PostgreSQL können aber auch Dinge wie Key-Value - Paare in einem Feld speichern (HSTORE) oder auch, noch hipper, das als JSON speichern. Letztlich wird das in binärer Form gespeichert, ist indexunterstützt. Damit kannst Du auch schnell alle Bauelemente mit bestimmten Eigenschaften suchen etc.

Mehr dazu hier: Replacing EAV with JSONB in PostgreSQL (ist schon 6 Jahre alt ...)
 
Auf EAV bin ich auch schon gestoßen, aber das finde ich irgendwie schwachsinnig, wenn ich das so sagen darf.

Die kompletten Eigenschaften als JSON in einem einzigen Feld zu speichern hört sich erst mal super an.
Ich muss die Daten halt präzise nach diesen Eigenschaften filtern können.
 
Werbung:
Zurück
Oben