Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung |
faecher:informatik:oberstufe:datenbanken:er_modelle_praxis:start [24.11.2020 06:56] – [Aufgaben] sbel | faecher:informatik:oberstufe:datenbanken:er_modelle_praxis:start [22.04.2025 08:21] (aktuell) – [Fremdschlüssel] Frank Schiebel |
---|
möglich sind. Jeder Schüler muss sich nur eine Information merken, was einfacher zu verwalten ist, als | möglich sind. Jeder Schüler muss sich nur eine Information merken, was einfacher zu verwalten ist, als |
wenn jeder Lehrer sich alle seine Schüler merken müsste. | wenn jeder Lehrer sich alle seine Schüler merken müsste. |
| |
| Eine Konvention legt fest, dass man im ER-Diagramm Fremdschlüsselattribute nicht als "Attributblase" angibt. |
| |
==== Aufgaben ==== | ==== Aufgaben ==== |
| |
| |
^ schueler ^^^^^^^^ | ^ schueler |||||||| |
^ SNummer ^ SNachname ^ SVorname ^ SGeburtsdatum ^ SGeschlecht ^ SKlasse ^ SEmail ^ KLNummer ^ | ^ SNummer ^ SNachname ^ SVorname ^ SGeburtsdatum ^ SGeschlecht ^ SKlasse ^ SEmail ^ KLNummer ^ |
| 1 | Fischer | Fritz | 06.04.1993 | m | 10a | fritzle@gmx.de | 1 | | | 1 | Fischer | Fritz | 06.04.1993 | m | 7a | fritzle@gmx.de | 1 | |
| 2 | Müller | Martina | 01.12.1997 | w | 6c | muellerma@web.de | 2 | | | 2 | Müller | Martina | 01.12.1997 | w | 6c | muellerma@web.de | 2 | |
| 3 | Wahnsinn | Heller | 05.12.1994 | w | 9b | hellwa@hotmail.com | 3 | | | 3 | Wahnsinn | Heller | 05.12.1994 | w | 9b | hellwa@hotmail.com | 3 | |
| 4 | Meyer | Lischen | 05.12.1992 | w | 10a | meli@hotmail.com | 4 | | | 4 | Meyer | Lischen | 05.12.1992 | w | 10a | meli@hotmail.com | 4 | |
| 5 | Maier | Lieschen | 05.12.1991 | w | 10a | melie@hotmail.com | 4 | | | 5 | Maier | Lieschen | 05.12.1991 | w | 10a | melie@hotmail.com | 4 | |
| |
| |
| |
++++ Lösungen | | ++++ Lösungen | |
| |
| ++ ER-Diagramm | {{ :faecher:informatik:oberstufe:datenbanken:er_modelle_praxis:lsgschule.drawio.png |}} Im ER-Diagramm werden Fremdschlüsselattribute nicht eingetragen. ++ |
| |
| ++ Wie wird die Relation hergestellt? | Die Relation wird hergestellt durch Verknüpfung von Fremd-- zu Primärschlüssel. Der Fremdschlüssel ist das Tabellenfeld KLNummer in der Tabelle Schüler, der Primärschlüssel ist das Feld LNummer in der Tabelle lehrer. LNachname ist ungeeignet, da er ziemlich sicher nicht eindeutig ist. (Müller, Maier, Eissler) |
| ++ |
| |
| ++ Eigenschaften des Primärschlüssels/Probleme bei Änderungen | Ein neuer Lehrer muss eine neue LNummer erhalten,die es noch niemals gab. Die LNummer 2 sollte niemals wieder vergeben werden. Wenn die Nummer nicht mehr existiert, erhält man als Ergebnis "existiert nicht", andernfalls erhält man falsche Daten. Idealerweise kann man der Datenbank mitteilen, was mit den zur LNummer 2 gehörenden Fremdschlüssel passieren soll, wenn der Datensatz mit dem Primärschlüssel 2 gelöscht wird. Der Fachbegriff dafür ist "Constraint". ++ |
| |
| ++ Weitere "Modularisierung" | Man könnte die Klassen als weitere Entität einführen: |
| |
| {{ :faecher:informatik:oberstufe:datenbanken:er_modelle_praxis:lsg_a1_klassen.png |}} |
| |
| In der Tabelle ''schueler'' muss dann anstatt des Klassennamens die ID der Klasse als weiterer Fremdschlüssel eingetragen werden. |
| |
| ++ |
++++ | ++++ |
---- | ---- |
Markiere in folgender Übersicht der Datenbank ''webshop'' die minimalen Schlüssel und Fremdschlüssel. Minimale Schlüssel werden unterstrichen, Fremdschlüssel gestrichelt unterstrichen. | Markiere in folgender Übersicht der Datenbank ''webshop'' die minimalen Schlüssel und Fremdschlüssel. Minimale Schlüssel werden unterstrichen, Fremdschlüssel gestrichelt unterstrichen. |
| |
{{ :faecher:informatik:oberstufe:datenbanken:er_modelle_praxis:webshop_er.png?600 |}} | {{ :faecher:informatik:oberstufe:datenbanken:er_modelle_praxis:webshop_er.png?400 |}} |
| |
Importiere die Datenbank {{ :faecher:informatik:oberstufe:datenbanken:er_modelle_praxis:webshop.zip|webshop}} in deinen mysql-Datenbankbereich. | Importiere die Datenbank {{ :faecher:informatik:oberstufe:datenbanken:er_modelle_praxis:webshop.zip|webshop}} in deinen mysql-Datenbankbereich. |
| |
===== Dateien ===== | ===== Material ===== |
| |
{{simplefilelist>..:er_modelle:03*}} | * [[https://slides.info-bw.de/fs-wiki-db-er-modelle-2/|Präsentation: ER-Modelle in der Praxis]] [[https://slides.info-bw.de/fs-wiki-db-er-modelle-2/?print-pdf|(PDF)]]((Link öffnen, dann aus dem Browser in ein PDF drucken)) [[https://codeberg.org/slides-fs/fs-wiki-db-er-modelle-2|(Code)]] |
| |
{{simplefilelist>.:*}} | |