Datenbankstruktur für parametrische Suche

OP #4411151
Lesenswert?
• ▲
▼
Hallo,

ich hab das Problem, das ich gerne für mich privat Sachen in einer 
Datenbank verwalten möchte und dabei gerne eine parametrische Suche wie 
z.B. bei Mouser realisieren möchte. Leider fehlt mir die Idee, wie die 
Datenbankstruktur dafür am Besten aussieht.
Ausgangspunkt ist eine Tabelle, in der alle Artikel samt einmaliger ID 
gelistet sind.
Meine erste Idee war in der Tabelle eine Spalte mit einer Gruppe und 
weitere Spalten mit freien Feldern anzuhängen und die freien Felder dann 
Gruppenabhänig zu interprtieren. Ist nach meinem Gefühl aber ein 
unsaubere Lösung und es wird sicher der Punkt kommen, an dem es nicht 
genug Spalten sind, weil irgendwas mehr Parameter hat.
Die zweite Idee war, für jede Gruppe eine eigene Tabelle mit den 
speziellen Werten und der ArtikelID. Da die Gruppen aber eine gewisse 
Hierachie haben und ich nicht erst auf der letzen Ebene die 
parametrische Suche haben möchte sehe ich auch das problematisch. Ein 
Beispiel, was ich meine sieht man bei Mouser unter Mikrocontroller, da 
kann man die Gruppen noch auf z.B. 8 Bit oder 32 Bit spezifizieren, hat 
aber bereits eine parametrische Suche z.B. nach der Taktrate.
Deshalb meine Frage, wie sieht eine geschickte Datenbankstruktur dafür 
aus?

Gruß Kai

PS: Falls interessant, ich verwende PostgreSQL als Datenbank und PHP für 
die Oberfläche über den Browser und das ganze unter Windows.
Gast #4411159
Lesenswert?
• ▲
▼
Ich würde eine Attributstabelle machen.

create table ArtikelAttr
{
   ArtId int,
   AttrId int,
   ValueInt int,
   ValueStr varchar(100),
   ValueFlt double
};

AttrId ist dann die Eigenschaft, z.b. Widerstand, Kapazität, usw.
In den ValueSpalten kommt dann der Wert rein. abhängig von Datentyp.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.