Ich habe eine bestehende DB (übernommen), in der Artikel (Werkzeug, Kabel, etc.) und die dazugehörigen Eigenschaften (Masse, Gewicht, max. Volt, etc.) gelistet sind.
Z. Zt. sieht es so aus, das eine Tabelle die Artikel beinhaltet (ID, Bezeichnung, Artikelart) und in vielen Tabellen die einzelnen Eigenschaften sind. Dies wurde gemacht, da z.B. Werkzeug ganz andere Eigenschaften hat als Kabel.
Es sieht also so aus:
Artikel
1231 - Kabel 1 - Kabel - …
2313 - Hammer - Werkzeug - …
3532 - Zange - Werkzeug - …
Ich glaube nicht, dass das so ganz richtig ist.
Ich muß z.Zt. immer in Artikel nachgucken, welche Art von Artikel es ist, bevor ich die Eigenschaften ansehen kann.
Da muß es doch was besseres geben.
Es müssen aber nach möglichkeit alle Artikel in einer Tabelle / View / Abfrage … zusammen erreichbar sein.
Und es muß eine relationale, keine objektorientierte Lösung sein.
unter oracle würde das select (unter oracle ev. eine (materialized) view) so aussehen
select a.id, a.name, a.werkzeug, b.eigenschaft1, b.eigenschaft2, …
from artikel a, eigenschaft_kabel b, eigenschaft_werkzeug c
where a.id = b.id (+)
and a.id = c.id (+);
aber du kannst auch das datenmodell auflösen und in eine normalform bringen - aber dazu fehlt mir jetzt die zeit …
Ich habe eine bestehende DB (übernommen), in der Artikel
(Werkzeug, Kabel, etc.) und die dazugehörigen Eigenschaften
(Masse, Gewicht, max. Volt, etc.) gelistet sind.
und jetzt magst du sie neuschrieben?
Z. Zt. sieht es so aus, das eine Tabelle die Artikel
beinhaltet (ID, Bezeichnung, Artikelart) und in vielen
Tabellen die einzelnen Eigenschaften sind. Dies wurde gemacht,
da z.B. Werkzeug ganz andere Eigenschaften hat als Kabel.
Es sieht also so aus:
Artikel
1231 - Kabel 1 - Kabel - …
2313 - Hammer - Werkzeug - …
3532 - Zange - Werkzeug - …