gf2:datenbanken:definition

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
gf2:datenbanken:definition [2024/05/06 14:32] marrocgf2:datenbanken:definition [2024/05/22 09:51] (aktuell) marroc
Zeile 38: Zeile 38:
   * **Einfache Assoziation:** jeder Entität wird wieder "genau eine" Entität zugeordnet, gewissermassen eine **1:1 Beziehung**. \\ Beispiel 1:Ein Land hat genau eine Hauptstadt. Eine Hauptstadt kann genau einem Land zugeordent werden. \\ Beispiel 2: Jeder Schüler hat einen Wiki-Login-Name. Ein Wiki-Login-Name kann einem Schüler zugeornet werden.   * **Einfache Assoziation:** jeder Entität wird wieder "genau eine" Entität zugeordnet, gewissermassen eine **1:1 Beziehung**. \\ Beispiel 1:Ein Land hat genau eine Hauptstadt. Eine Hauptstadt kann genau einem Land zugeordent werden. \\ Beispiel 2: Jeder Schüler hat einen Wiki-Login-Name. Ein Wiki-Login-Name kann einem Schüler zugeornet werden.
   * **Konditionelle Assoziation**: jeder Entität wird höchstens eine Entität zugeordnet, eine keins-oder-eins Beziehung. \\ Beispiel 1: Ein (schweizer) Staatsangehöriger hat genau einen oder keinen (schweizer) Reisepass. Jeder Reisepass gehört einem Staatsangehörigen \\ Beispiel 2: Jedes Englischbuch im Klassenzimmer gehört einem Lernenden bzw. einer Lernenden. Nicht unbedingt jeder Lernende muss sein Englischbuch im Klassenzimmer dabei haben.   * **Konditionelle Assoziation**: jeder Entität wird höchstens eine Entität zugeordnet, eine keins-oder-eins Beziehung. \\ Beispiel 1: Ein (schweizer) Staatsangehöriger hat genau einen oder keinen (schweizer) Reisepass. Jeder Reisepass gehört einem Staatsangehörigen \\ Beispiel 2: Jedes Englischbuch im Klassenzimmer gehört einem Lernenden bzw. einer Lernenden. Nicht unbedingt jeder Lernende muss sein Englischbuch im Klassenzimmer dabei haben.
-  * **Mehrfache Assoziation**: jeder Entität werden "mehrere" Entitäten zugeordnet. Diese Beziehung ist eine mehr-zu-mehr-Beziehung und wird oft als komplex bezeichnet. Oft spricht man hier auch von einer m:n Beziehung. \\ Beispiel 1 einer n:m Beziehung: Im Sozalen Netzwerk können mehrer User mehrere Bilder kommentieren. \\ Beispiel 2 einer 1:n Bezieung: Ein bestimmtes Kunstwerk (Bild) kann nur in einem Museum gleichzeitig ausgestellt werden, jedoch hat ein Museum mehrere Kunstwerke ausgestellt.+  * **Mehrfache Assoziation**: jeder Entität werden "mehrere" Entitäten zugeordnet. Diese Beziehung ist eine mehr-zu-mehr-Beziehung und wird oft als komplex bezeichnet. Oft spricht man hier auch von einer m:n Beziehung. \\ Beispiel 1 einer n:m Beziehung: Im Sozalen Netzwerk können mehrere User mehrere Bilder kommentieren. \\ Beispiel 2 einer 1:n Bezieung: Ein bestimmtes Kunstwerk (Bild) kann nur in einem Museum gleichzeitig ausgestellt werden, jedoch hat ein Museum mehrere Kunstwerke ausgestellt.
   * **Mehrfach-konditionelle Assoziation**: jeder Entität werden "keine, eine oder mehrere" Entitäten zugeordnet. Im Gegensatz zu der mehrfachen Assoziation ist hier zu nennen, dass nicht zu jeder Entität eine Beziehung zu einer Entität der Zielmenge bestehen muss.    * **Mehrfach-konditionelle Assoziation**: jeder Entität werden "keine, eine oder mehrere" Entitäten zugeordnet. Im Gegensatz zu der mehrfachen Assoziation ist hier zu nennen, dass nicht zu jeder Entität eine Beziehung zu einer Entität der Zielmenge bestehen muss. 
  
Zeile 44: Zeile 44:
  
 Video zum Thema: Video zum Thema:
-{{ youtube>W4UkIK2BwS8 }}+|{{ youtube>W4UkIK2BwS8 }}|{{ youtube>34_FRBo9vOU }}| 
 +<WRAP nicebox green> 
 +**Kurzer Auftrag 1:**\\ 
 +Wie sieht das ERM Diagrammm von Instahub aus? 
 +- Bestimmen Sie alle Entitäten und deren Beziehungen 
 +- Zeichnen Sie ein Diagramm 
 +<accordion> 
 +<panel title="Lösungen"> 
 + {{ :gf2:datenbanken:er-instahub.png?direct&800 |}}\\ 
 +[[https://herrschultz.info/doku.php?id=info:sek1:db-instahub|Bildquelle]] 
 +</panel> 
 +</accordion> 
 +</WRAP>
  
 ==== Attribute oder Merkmale von Entitäten oder Beziehungen==== ==== Attribute oder Merkmale von Entitäten oder Beziehungen====
  
 Nun haben wir in unserem Beispiel die Entitäten ('User' und 'Fotos') und deren Beziehungen ('Posten' und 'Kommentieren') inklusive der Assozationen im ERM-Model gezeichnet. Was noch fehlt, um danach eine Datenbankentwurf umsetzen zu können, sind die Merkmale von Entitäten oder auch jene von Beziehungen. \\ Nun haben wir in unserem Beispiel die Entitäten ('User' und 'Fotos') und deren Beziehungen ('Posten' und 'Kommentieren') inklusive der Assozationen im ERM-Model gezeichnet. Was noch fehlt, um danach eine Datenbankentwurf umsetzen zu können, sind die Merkmale von Entitäten oder auch jene von Beziehungen. \\
 +
 {{ :gf2:datenbanken:erm_instahub5.png?direct&800 |}}\\ {{ :gf2:datenbanken:erm_instahub5.png?direct&800 |}}\\
 Einfach ausgedrückt entsprechen Sie den Feldern (als Gedankenstütze man sich könnte dies hier auch als "Tabellenspalten" oder "Überschriften" vorstellen), die wir über jede Tabelle abspeichern wollen.\\ Einfach ausgedrückt entsprechen Sie den Feldern (als Gedankenstütze man sich könnte dies hier auch als "Tabellenspalten" oder "Überschriften" vorstellen), die wir über jede Tabelle abspeichern wollen.\\
Zeile 56: Zeile 69:
  
 Für unser Beispiel vom Sozialen Netzwerk könnten folgende Attribute dem ERM zugefügt werden. Für unser Beispiel vom Sozialen Netzwerk könnten folgende Attribute dem ERM zugefügt werden.
 +{{ :gf2:datenbanken:ih_ergebnis.png?direct&600 |}}
 +[[https://herrschultz.info/doku.php?id=info:sek1:db-instahub|Bildquelle]]
  
 <WRAP nicebox green> <WRAP nicebox green>
-**Kurzer Auftrag 1:**\\+**Kurzer Auftrag 2:**\\
 Identifizieren Sie im obigen Model die Primär- und die Fremdschlüssel und bestimmen Sie die restlichen nicht abgebildeten Attribute. Ihr Instahub oder die früheren Tabellen können helfen. Identifizieren Sie im obigen Model die Primär- und die Fremdschlüssel und bestimmen Sie die restlichen nicht abgebildeten Attribute. Ihr Instahub oder die früheren Tabellen können helfen.
 </WRAP> </WRAP>
Zeile 64: Zeile 79:
  
 <WRAP nicebox green> <WRAP nicebox green>
-** ERM - Aufgabe ** \\+** Auftrag 3 ** \\
 Erstellen Sie ein ERM zum folgenden Szenario. Dies wird sicher am einfachsten auf Papier erstellt. Indentifizieren Sie die Primär- und Fremdschlüssel, bestimmen Sie die jeweiligen Entitätsbeziehungen und erstellen Sie ein Diagramm. Achtung, vermutlich braucht dies auch etwas Platz! Erstellen Sie ein ERM zum folgenden Szenario. Dies wird sicher am einfachsten auf Papier erstellt. Indentifizieren Sie die Primär- und Fremdschlüssel, bestimmen Sie die jeweiligen Entitätsbeziehungen und erstellen Sie ein Diagramm. Achtung, vermutlich braucht dies auch etwas Platz!
  
Zeile 101: Zeile 116:
 ---- ----
 <WRAP nicebox green> <WRAP nicebox green>
-**Auftrag ERM und die Regeln :** \\+**Auftrag 4:** \\
   - Besprechen Sie kurz zu zweit diese genannten Regeln für unser Instahub-Beispiel und auch für die Zoo Aufgabe. Entwerfen Sie so die Datenbank in groben Zügen (Wie viele Tabelle, welche Attribute, ...)   - Besprechen Sie kurz zu zweit diese genannten Regeln für unser Instahub-Beispiel und auch für die Zoo Aufgabe. Entwerfen Sie so die Datenbank in groben Zügen (Wie viele Tabelle, welche Attribute, ...)
   - Füllen Sie die folgenden Begriffe in das leere ERM, dabei sollten alle möglichst viele der Ihnen bekannten Beziehungstypen genutzt werden. Ergänzen Sie das ERM durch einige wenige Attribute. Erklären Sie in groben Zügen die Struktur der Datenbank, unter Beachtung der oben formulierten Regeln.   - Füllen Sie die folgenden Begriffe in das leere ERM, dabei sollten alle möglichst viele der Ihnen bekannten Beziehungstypen genutzt werden. Ergänzen Sie das ERM durch einige wenige Attribute. Erklären Sie in groben Zügen die Struktur der Datenbank, unter Beachtung der oben formulierten Regeln.
  • gf2/datenbanken/definition.1714998730.txt.gz
  • Zuletzt geändert: 2024/05/06 14:32
  • von marroc