Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| planung:datenbanken [2023/06/05 08:58] – marroc | planung:datenbanken [2023/06/05 22:16] (aktuell) – marroc | ||
|---|---|---|---|
| Zeile 164: | Zeile 164: | ||
| Die Assoziationen (teilweise auch Kardinalität genannt) gibt es verschiedene Typen. | Die Assoziationen (teilweise auch Kardinalität genannt) gibt es verschiedene Typen. | ||
| - | * **Einfache Assoziation: | + | * **Einfache Assoziation: |
| * **Konditionelle Assoziation**: | * **Konditionelle Assoziation**: | ||
| * **Mehrfache Assoziation**: | * **Mehrfache Assoziation**: | ||
| Zeile 188: | Zeile 188: | ||
| - | <WRAP nicebox | + | <WRAP nicebox |
| ** ERM - Aufgabe ** \\ | ** ERM - Aufgabe ** \\ | ||
| Erstellen Sie ein ERM zum folgenden Szenario. Dies wird sicher am einfachsten auf Papier erstellt. Indentifizieren Sie die Primär- und Fremdschlüssel, | Erstellen Sie ein ERM zum folgenden Szenario. Dies wird sicher am einfachsten auf Papier erstellt. Indentifizieren Sie die Primär- und Fremdschlüssel, | ||
| Zeile 204: | Zeile 204: | ||
| ==== Abbildungsregeln für die drei Beziehungstypen ==== | ==== Abbildungsregeln für die drei Beziehungstypen ==== | ||
| + | Eine relationale Datenbank besteht somit aus mehreren untereinander in Beziehung stehenden Tabellen. Beim Entwerfen solcher gut funktionierender Datenbanken sind Regeln zu beachten, mit denen innerhalb von Tabellen Abhängigkeiten freigelegt werden könne und so redundante Information (Anomalien) vermieden werden können. | ||
| + | |||
| === Abbildungsregel für 1:1 Beziehungen - KANN-Regel === | === Abbildungsregel für 1:1 Beziehungen - KANN-Regel === | ||
| - | Die **KANN-Regel** bedeutet, dass man bei einer einfach-zu-einfach Beziehung | + | Die **KANN-Regel** bedeutet, dass man bei einer einfach-zu-einfach Beziehung |
| - | + | ||
| - | Alternativ ist es hier aber auch möglich, nur 1 Tabelle zu erstellen, die alle Länder und Hauptstädte enthält. In diesem Fall braucht man keinen Fremdschlüssel für diese Beziehung!\\ | + | |
| + | Alternativ ist es hier aber auch möglich, nur 1 Tabelle zu erstellen, die alle Länder und Hauptstädte enthält. Natürlich braucht es in diesem Fall keinen Fremdschlüssel mehr, jedoch nach wie vor einen Primärschlüssel. | ||
| + | ---- | ||
| === Abbildungsregel - MUSS-Regel für einfach-mehrfache Beziehungen === | === Abbildungsregel - MUSS-Regel für einfach-mehrfache Beziehungen === | ||
| Zeile 216: | Zeile 217: | ||
| **Beispiel einer einfach-zu-mehrfachen-Beziehung**\\ | **Beispiel einer einfach-zu-mehrfachen-Beziehung**\\ | ||
| - | Jeder Auftrag (zum Beispiel Bestellung) gehört zu genau 1 Kunden, während jeder Kunde mehrere Bestellungen tätigen kann (siehe Video weiter oben). | + | Jeder Auftrag (zum Beispiel Bestellung-Kunden-Firma im Video) gehört zu genau 1 Kunden, während jeder Kunde mehrere Bestellungen tätigen kann. |
| - | <WRAP nice green box> | + | ---- |
| - | **Auftrag: | + | |
| - | Zeichnen Sie kurz das ERM mit Kunde Bestellungen und diskutieren Sie zu zweit die Beziehungen und die oben beschriebenen Regeln für dieses Beispiel. | + | |
| - | </ | + | |
| === Abbildungsregeln - MUSS-Regel für komplexe Beziehungen === | === Abbildungsregeln - MUSS-Regel für komplexe Beziehungen === | ||
| - | Die **MUSS-Regel für komplexe Beziehungen** bedeutet, dass man bei komplexen (mehrfach-zu-mehrfach, | + | Die **MUSS-Regel für komplexe Beziehungen** bedeutet, dass man bei komplexen (mehrfach-zu-mehrfach, |
| - | <WRAP nice green box> | + | Hier kann unser Beispiel vom Anfang mit den Instahub |
| - | **Auftrag: | + | |
| - | Besprechen Sie kurz zu zweit diese " | + | |
| - | </ | + | |
| + | ---- | ||
| + | <WRAP nicebox green> | ||
| + | **Auftrag ERM und die Regeln :** \\ | ||
| + | - 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 und bestimmen Sie die Kardinalitäten. 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. | ||
| + | </ | ||
| ====== Einführung in SQL ====== | ====== Einführung in SQL ====== | ||
| Stuctured Quere Language (SQL) ist eine standardisierte Abfrage-Sprache um Daten in Datenbanken zu speichern, zu manipulieren und herauszufiltern (zu erhalten). \\ | Stuctured Quere Language (SQL) ist eine standardisierte Abfrage-Sprache um Daten in Datenbanken zu speichern, zu manipulieren und herauszufiltern (zu erhalten). \\ | ||
| Zeile 276: | Zeile 278: | ||
| FROM users | FROM users | ||
| WHERE username LIKE " | WHERE username LIKE " | ||
| + | </ | ||
| + | |||
| + | 2. Aufgabe | ||
| + | <code SLQ> | ||
| + | SELECT username | ||
| + | FROM users | ||
| + | WHERE gender = " | ||
| + | </ | ||
| + | |||
| + | 3. Aufgabe | ||
| + | <code SLQ> | ||
| + | |||
| </ | </ | ||
| </ | </ | ||