1 / 37

Erstellen einer Datenbank

Erstellen einer Datenbank. Vom semantischen zum logischen Modell. Überblick. Logisches Modell. Die vier Stationen. Semantisches Modell. Fälle von Redundanz*. Abfragen. Softwaremäßige Implementierung. *Hintergrundwissen der Lehrkraft. Vorarbeit: Semantisches Modell. Spielmobile AG.

grazia
Download Presentation

Erstellen einer Datenbank

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Erstellen einer Datenbank Vom semantischen zum logischen Modell

  2. Überblick Logisches Modell • Die vier Stationen Semantisches Modell Fälle von Redundanz* Abfragen Softwaremäßige Implementierung *Hintergrundwissen der Lehrkraft

  3. Vorarbeit: Semantisches Modell • Spielmobile AG LIEFERANT Name Strasse PLZ Ort BAUTEIL BauteilName 1 liefert > n Preis Fixkosten m Ist_verbaut_in  Anzahl n PRODUKT ProduktName KUNDE Name Strasse PLZ Ort n bestellt > m Anzahl

  4. Logisches Modell • Aufbereitung der Daten zur Eingabe in den Computer Tabellenname 1 Mengenschreibweise: Tabellenname 1 ={ Spaltenkopf 1, Spaltenkopf 2}

  5. Logisches Modell • Übergang vom semantisches Modell zum logischen Relationenmodell

  6. Vergleich: Semantisch vs. Logisch BAUTEIL Name Bauteil 1. Datensatz 2. Datensatz 3. Datensatz Datentyp 1 Datentyp 2

  7. Logisches Modell - Datentypen • Datentypen kennzeichnen die Art des Zellinhaltes einer Spalte • Beispiele

  8. Logisches Modell • Datentypen der Klasse Bauteil Bauteil Datentyp? Datentyp?

  9. Logisches Modell - Primärschlüssel • Der Primärschlüssel ist eine Spalte, mit deren Hilfe man einen Datensatz eindeutig identifizieren kann • Minimale Anzahl an Attributen in einem Datensatz • Die Spalte ID stellt einen sinnvollen Primärschlüssel dar! Bauteil

  10. Logisches Modell - Primärschlüssel Voraussetzungen für einen Primärschlüssel • Jeder Attributwert kommt nur einmal vor • Jeder Attributwert kennzeichnet den Datensatz eindeutig • Die Software (DBMS) sorgt für eindeutige Vergabe

  11. Arbeitsauftrag • Erstellen Sie die vollständigen Relationen „Bauteil“ und „Lieferant“! • Geben Sie die Datentypen an! • Kennzeichnen Sie die Primärschlüssel! Welche Spalten könnten Primärschlüssel sein? • Fallbeispiel : Spielmobile AG • Semantisches Modell • Arbeitsblatt: Relationen I • Zeitvorschlag: 10 min

  12. Arbeitsauftrag – Lösung Bauteil

  13. Arbeitsauftrag – Lösung Lieferant Warum Datentyp „Text“ und nicht „ganze Zahl“?

  14. Logisches Modell - Beziehungsrelation • Beziehungen sind eigene Klassen Name der Beziehung Beziehung 1 Beziehung 2 Beziehung 3

  15. Logisches Modell – Beziehungsrelation • Beispiel Weitere Attribute der Beziehung sind zusätzliche Spalten! liefert Die Kombination der Fremdschlüssel ist der Primärschlüssel dieser Relation! Fremdschlüssel sind Primärschlüssel anderer Relationen!

  16. Logisches Modell – Beziehungsrelation • Beispiel liefert Zur Erinnerung: 1:n-Kardinalität

  17. Arbeitsauftrag • Erstellen Sie die vollständigen Relationen „Produkt“ und „Kunde“! • Erstellen Sie die vollständigen Relationen „ist_verbaut_in“ und „bestellt“! • Geben Sie die Datentypen an! • Kennzeichnen Sie die Primär- und Fremdschlüssel! • Fallbeispiel : Spielmobile AG • Semantisches Modell • Arbeitsblatt: Relationen I • Zeitvorschlag: 20 min

  18. Arbeitsauftrag – Lösungen Produkt Kunde

  19. Arbeitsauftrag – Lösungen ist_verbaut_in Zur Erinnerung: m:n-Kardinalität

  20. Arbeitsauftrag – Lösungen bestellt Zur Erinnerung: m:n-Kardinalität

  21. Logisches Modell – Zusammenführung • Welche Tabelle könnte eingespart werden? Kunde Lieferant bestellt liefert m:n 1:n m:n Produkt ist_verbaut_in Bauteil

  22. Logisches Modell – Kardinalitäten Lieferant Tabellen mit einer Fremd-schlüsselspalte, die identisch mit der Primärschlüsselspalte einer anderen Tabelle ist, werden zusammengeführt! liefert Bauteil

  23. Logisches Modell – Kardinalitäten Lieferant Bauteil Beziehungen der Kardinalität 1:n und 1:1 benötigen keine eigene Tabelle!

  24. Logisches Modell – Zusammenfassung • Jede Klasse und jede Beziehung wird zu einer Tabelle • Attributnamen werden zu Spaltenbezeichnern, denen Datentypen zuzuordnen sind • Jede Tabelle hat einen eindeutigen Primärschlüssel (ID) • Beziehungstabellen haben Sekundärschlüssel (…Nr) • Beziehungstabellen der 1:n- und 1:1-Kardinalitäten lassen sich an Klassentabellen anhängen

  25. Arbeitsauftrag LEHRER Name Vorname Strasse PLZ Ort Tel E-Mail Lohn LSt_Klasse Kto BLZ leitet • Finden Sie die Kardinalitäten! • Stellen Sie das logische Modell auf! TEILNEHMER Name Vorname Strasse PLZ Ort Tel Geb_Datum E-Mail Abz_Datum Geschlecht KURS Plaetze Typ Gebühr Termin_Anz Starttermin <leitet <hält Nimmt_teil > Findet_statt > <assistiert KURSTERMIN Datum Dauer Startzeit FERIEN Beginn Ende Fällt_auf> War_da >

  26. Arbeitsauftrag LEHRER Name Vorname Strasse PLZ Ort Tel E-Mail Lohn LSt_Klasse Kto BLZ leitet • Finden Sie die Kardinalitäten! • Stellen Sie das logische Modell auf! TEILNEHMER Name Vorname Strasse PLZ Ort Tel Geb_Datum E-Mail Abz_Datum Geschlecht KURS Plaetze Typ Gebühr Termin_Anz Starttermin n <leitet 1 1 n 1 m <hält Nimmt_teil > Findet_statt > m <assistiert n n n m KURSTERMIN Datum Dauer Startzeit FERIEN Beginn Ende Fällt_auf> War_da > n n 1

  27. ungenaue Analyse Zeitdruck Fehler im seman-tischen Modell „Schlechtes“ logisches Modell Fehlerhafte Abfragen Typische Fehler – Ursachen • Problematik (nicht im Unterricht besprechen!)

  28. Typische Fehler • Beispiel: Es sollen möglichst schnell die absolvierten Fortbildungen der Mitarbeiter in die Personaldatenbank aufgenommen werden. Mitarbeiter

  29. Typische Fehler - Unauffindbarkeit • Lösungsvorschlag Personal • Wer war schon bei X-Consult? • kann aus dem Fließtext der letzten Spalte nur schwer ausgelesen werden. • Lösungsvorschläge?

  30. Normalisierung • Normalform I – Atomisierung der Information Welche Spalte stellt den Primärschlüssel dar? Primärschlüssel = {PersID; FID}

  31. Typische Fehler - Redundanzen • Frau Bernauers Gehalt wurde um 200 Euro erhöht • Herr Abele hat die SAP R/3-Fortbildung besucht Mitarbeiter Redundanz von Daten  Inkonsistenz der Datenbank

  32. Typische Fehler - Redundanzen • Mehrteilige Primärschlüssel mit funktional abhängigen Attributen Mitarbeiter Ziel: Nur eine Spalte als Primärschlüssel und Auflösen der Abhängigkeiten

  33. Normalisierung • Normalform II: Normalform I und keine funktionale Abhängigkeit von Teilschlüsseln des Primärschlüssels Bei jedem Fortbildungsbesuch soll das jeweilige Datum gespeichert werden… Mitarbeiter hat_besucht (m:n) Fortbildung

  34. Typische Fehler - Redundanzen • Transitive Abhängigkeit vom Primärschlüssel Fortbildung

  35. Normalisierung • Normalform III: Normalform II und keine transitive Abhängigkeit vom Primärschlüssel Mitarbeiter hat_besucht Fortbildung Veranstalter Zeichnen Sie das semantische Modell!

  36. Arbeitsauftrag – Lösung • Semantisches Modell MITARBEITER Name Vorname Adresse Gehalt FORTBILDUNG Fortbildungsbezeichnung Veranstalter VERANSTALTER Name Ort hat_besucht m n n durchgeführt_von 1

  37. Übungsaufgabe • Sie erhalten den Auftrag, eine Datenbank für das Ministerium zu erstellen, um einfach den Lehrerbedarf (nur Vollzeitkräfte) und die Zuweisungen zu managen. • Die Datenbank soll Lehrer mit ihrer Fächerkombination, den Wunscheinsatzorten, dem aktuellen Einsatzort, der Anzahl der erfolglosen Gesuche und einem Freigabevermerk speichern • Gespeichert werden sollen die Schulen mit Ort und deren Stellenbedarf. • Entwerfen Sie ein semantisches und logisches Modell!

More Related