Datenbankmodellierung, Datenbankaufbau

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?

Grüsse,
Sebastian

Auch hallo.

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

mfg M.L.

hi m.l.

(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…

n:m bez. würde ich nicht meinen.

hier meine tabellen:

  • land
  • kategorie
  • unterkategorie

tabelle land:

IDLand | Bezeichnung
1 | Deutschland
...

tabelle kategorie:

IDKat | Bezeichnung | FKIDLand
1 | Computer | 1
...

tabelle unterkategorie:

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

Moin, 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.

Gruß Ralf

Hallo Ralf.

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

Tabelle Kategorie:
ID, Bezeichnung
1, Computer
2, Netzwerk
3, Hardware
4, Namenskonventionen

Tabelle Unterkategorie
ID, Bezeichnung, FKKatID
1, Users, 4
2, Groups, 4

usw.

ich glaube ich bin da richtig, odr doch nicht??

Gruss und danke für deine Antwort.
Sebastian

Hallo Ralf.

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.

klingt schlüssig…

Vielleicht helfen diese Links:
http://www.utexas.edu/its/windows/database/datamodel…,
http://www.tks.at/technologien/ermodel.html,
http://www.jeckle.de/vorlesung/datenbanken/script.html

Die links haben sehr geholfen.

Danke…
Sebastian