Hallo. ich hab eine frage bez. datenbankmodellierung. wie sollte meine datenbank aussehen?
ich hab folgende Struktur:
Ich hab eine Tabelle mit Ländern. z.B. AT, CH, D, … Alle diese Länder haben die selbe unterteilung und zwar ca. 10 Kategorien.
Kategorien:
Computer
Netzwerk
…
Nun gibt es z.B. bei Computer nochmals weitere unterteilungen und zwar:
Marke
Baujahr
…
Wie viele Tabellen benötige ich?
In welcher Beziehung stehen die zueinander?
ich hab folgende Struktur:
Ich hab eine Tabelle mit Ländern. z.B. AT, CH, D, … Alle
diese Länder haben die selbe unterteilung und zwar ca. 10
Kategorien.
Kategorien:
Computer
Netzwerk
…
Nun gibt es z.B. bei Computer nochmals weitere unterteilungen
und zwar:
Marke
Baujahr
…
Wie viele Tabellen benötige ich?
In welcher Beziehung stehen die zueinander?
(Geraten): Land und Computer sind je eigenständige Tabellen. Die Land-Id (oder der Name) ist der Primary Key der Land-Tabelle, die Computer-Id der Foreign Key. Die Tabellen stehen in n:m Beziehung zueinander (oder 1:n, da 1 Land mehrere Computer haben kann)
Noch ein Tool zur DB-Modellierung: http://www.fabforce.net
(Geraten): Land und Computer sind je eigenständige Tabellen.
Die Land-Id (oder der Name) ist der Primary Key der
Land-Tabelle, die Computer-Id der Foreign Key. Die Tabellen
stehen in n:m Beziehung zueinander (oder 1:n, da 1 Land
mehrere Computer haben kann)
ich hab mich jetzt für das 1:n entschieden…denke das stimmt am ehesten…
IDUKat | Bezeichnung | FKIDKat
1 | Marke | 1
würde das so stimmen??
> Noch ein Tool zur DB-Modellierung: http://www.fabforce.net
wer ich mir mal anschauen...danke
gruss,
sebastian
ein Datenmodell spiegelt den Informationsbedarf des Anwenders wider. Ohne Kenntnis der fachlichen Zusammenhänge kommt da nichts Vernünftiges zustande.
Wie haben Land und Computer miteinander zu tun? Der Satz Alle diese Länder haben die selbe unterteilung lässt mich zwar ahnen, worum es geht, beschreibt aber keineswegs die Beziehung, in der die Entitäten stehen.
Eigenschaften der Hardware wie das Baujahr sind bloße Attribute; die Marke könnte man zur Vermeidung von Tippfehlern als Referenztabelle anlegen.
ein Datenmodell spiegelt den Informationsbedarf des Anwenders
wider. Ohne Kenntnis der fachlichen Zusammenhänge kommt da
nichts Vernünftiges zustande.
ich hatte in meiner ausbildung, also vor ca. 4-5 jahren mal das thema datenbank, mit n:m-Beziehungen, 1:1 und 1:n. Jedoch weiss ich im mom. nicht mehr wie das so funktioniert.
Es ist doch so:
1 Land hat n Kategorien
1 Kategorie hat n Unterkategorien
oder irre ich mich da??
Dies gilt dann für das Land:
Austria
Germany
Swiss
Belgium
…
Also würd die Datenbankstruktur so aussehen??
Tabelle Land:
ID, Bezeichnung
1, Austria
2, Germany
…
es kann durchaus sein, dass Dein Modell Deinen Ansprüchen
genügt, meinen jedoch nicht, weil ich nicht erkennen kann, was
da abgebildet werden soll.
das eigentliche was passiert, ist, dass jede unterkategorie / land einen wert erhält. deshalb hab ich nochmals eine weitere tabelle erstellt, die dies wiederspiegelt. wenn ich soweit bin, werde ich hier den nochmals posten.
Ein Datenmodell bildet einen Ausschnitt aus dem Leben ab, und
im Leben gibt es halt keine Kategorien, sondern Dinge, die
miteinander zu tun haben. Kategorienmodelle kannst Du bauen
mit 27 Ebenen, das hilft nur nichts, wenn Du nicht sagst,
welche Ereignisse da festgehalten werden. Oder anders gesagt:
Da muss klar werden, warum Du eine neue Zeile in einer Tabelle
anlegst. Ansonsten bleibst Du im akademischen Quark stecken.