Hallo Leute,
habe mir heute die Workbench heruntergeladen, um eine DB
zu entwerfen. Dabei bin ich aber auf ein mittelschweres Problem
gestossen.
Das war dann der Grund, dass ich mir noch schnell eine Trial
vom Sybase PowerDesigner herunterlud, um dort mit Erschrecken
das gleiche Problem festzustellen.
Nun frage ich mich, weil die Programme ja auch von Profis genutzt
werden, ob ich in meiner Denkweise einen Fehler habe.
Nun wird's konkreter. ;-)
Wenn ich eine DB entwerfe (bisher immer nur auf Papier) dann nutze
ich nicht nur die Chen-Notation (1:n, n:1, 1:1, m:n), sondern auch die
Min-/Max-Notation, da diese ja viel detaillierter ist.
In der Chen-Notation beim Fall 1:1 gibt es schliesslich drei verschiedene
Möglichkeiten die Tabellen korrekt zu erstellen. Was genau gemacht werden
muss, sagt mir dann allerdings erst die Min-/Max-Notation.
1:1 mit nur einer Tabelle:
Trifft zu, wenn beide Seiten (ERM) obligatorisch sind. Der Logik und
Übersichtlichkeit wegen teilt man es meist eh in zwei Tabellen auf, wobei
dann egal ist welcher PK als FK in die andere Tabelle wandert.
Z.B.: Autos und Fahrer. Jeder Fahrer fährt genau ein Auto und jedes Auto
wird von genau einem Fahrer gefahren.
1:1 mit zwei Tabellen:
Trifft zu, wenn eine Seite nicht-obligatorisch ist und die andere obligatorisch.
Z.B.: Autos und Fahrer. Ein Fahrer wird keinem Auto zugeordnet. Alle anderen
fahren wieder nur genau ein Fahrzeug. Es ist quasi ein Fahrer übrig.
Hier wäre die Seite der Fahrer nicht-obligatorisch, da beim Minimum die
Möglichkeit einer 0 besteht.
Somit muss der PK der nicht-obligatorischen Seite als FK zur obligatorischen
Seite wandern.
Anders herum wäre es nicht korrekt, weil dann Leerfelder in der Tabelle
entstehen würden.
1:1 mit drei Tabellen:
Trifft zu, wenn beide Seiten im ERM nicht-obligatorisch sind. Zwei Tabellen reichen
hier nicht aus, da egal wie man es dreht und wendet, immer Leerfelder in den
Tabellen entstehen.
Also wandert der PK der einen Seite und der PK der anderen Seite jeweils als
FK in eine 'ZwischenTabelle'.
So...also es gibt für 1:1 drei Möglichkeiten der Tabellenbildung.
Welche Software kann das abbilden?
Wo kann man mit der Min-/Max-Notation arbeiten?
Die Chen-Notation ist ja hier keinesfalls ausreichend
...oder?
Danke
Dickus
habe mir heute die Workbench heruntergeladen, um eine DB
zu entwerfen. Dabei bin ich aber auf ein mittelschweres Problem
gestossen.
Das war dann der Grund, dass ich mir noch schnell eine Trial
vom Sybase PowerDesigner herunterlud, um dort mit Erschrecken
das gleiche Problem festzustellen.
Nun frage ich mich, weil die Programme ja auch von Profis genutzt
werden, ob ich in meiner Denkweise einen Fehler habe.
Nun wird's konkreter. ;-)
Wenn ich eine DB entwerfe (bisher immer nur auf Papier) dann nutze
ich nicht nur die Chen-Notation (1:n, n:1, 1:1, m:n), sondern auch die
Min-/Max-Notation, da diese ja viel detaillierter ist.
In der Chen-Notation beim Fall 1:1 gibt es schliesslich drei verschiedene
Möglichkeiten die Tabellen korrekt zu erstellen. Was genau gemacht werden
muss, sagt mir dann allerdings erst die Min-/Max-Notation.
1:1 mit nur einer Tabelle:
Trifft zu, wenn beide Seiten (ERM) obligatorisch sind. Der Logik und
Übersichtlichkeit wegen teilt man es meist eh in zwei Tabellen auf, wobei
dann egal ist welcher PK als FK in die andere Tabelle wandert.
Z.B.: Autos und Fahrer. Jeder Fahrer fährt genau ein Auto und jedes Auto
wird von genau einem Fahrer gefahren.
1:1 mit zwei Tabellen:
Trifft zu, wenn eine Seite nicht-obligatorisch ist und die andere obligatorisch.
Z.B.: Autos und Fahrer. Ein Fahrer wird keinem Auto zugeordnet. Alle anderen
fahren wieder nur genau ein Fahrzeug. Es ist quasi ein Fahrer übrig.
Hier wäre die Seite der Fahrer nicht-obligatorisch, da beim Minimum die
Möglichkeit einer 0 besteht.
Somit muss der PK der nicht-obligatorischen Seite als FK zur obligatorischen
Seite wandern.
Anders herum wäre es nicht korrekt, weil dann Leerfelder in der Tabelle
entstehen würden.
1:1 mit drei Tabellen:
Trifft zu, wenn beide Seiten im ERM nicht-obligatorisch sind. Zwei Tabellen reichen
hier nicht aus, da egal wie man es dreht und wendet, immer Leerfelder in den
Tabellen entstehen.
Also wandert der PK der einen Seite und der PK der anderen Seite jeweils als
FK in eine 'ZwischenTabelle'.
So...also es gibt für 1:1 drei Möglichkeiten der Tabellenbildung.
Welche Software kann das abbilden?
Wo kann man mit der Min-/Max-Notation arbeiten?
Die Chen-Notation ist ja hier keinesfalls ausreichend
...oder?
Danke
Dickus
Comment