1 / 30

Datenbankentwurf Das Telefonbuch als Datenbasis

Straße. Hausnr. Vorname. Teilnehmer. Ort. Name. Nummer. Vorwahl. ER-Modell „Telefonbuch“. Datenbankentwurf Das Telefonbuch als Datenbasis. Das herkömmliche Telefonbuch... ... ist eine Ansammlung vieler Daten

ciel
Download Presentation

Datenbankentwurf Das Telefonbuch als Datenbasis

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. Straße Hausnr Vorname Teilnehmer Ort Name Nummer Vorwahl ER-Modell „Telefonbuch“ Datenbankentwurf Das Telefonbuch als Datenbasis • Das herkömmliche Telefonbuch... ... ist eine Ansammlung vieler Daten ... besteht aus einzelnen Teilnehmern als Datensätze ... ist nach festem Schlüssel sortiert (Ort, Name, Vorname, ...) ... enthält keine Möglichkeit zum Eintragen, Ändern, Löschen oder Umsortieren ... ist deshalb nur eine Datenbasis, keine Datenbank. • Eine Telefonbuch-CD... ... enthält exakt die gleiche Datenbasis wie das Telefonbuch ... ist durch die zusätzliche Software eine Datenbank ... kann durch Änderung der Sortierschlüssel wesentlich mehr Information bereitstellen: landesweite Namensuche Nachbarsuche (Adressbuch) Rufnummeridentifikation (Datenschutzkonflikt!) ... hat (oft) keine Möglichkeit zum Ändern/Löschen/Hinzufügen von Datensätzen

  2. Datenbankentwurf Datenschutz • Früher: alles ist erlaubt, was nicht verboten ist! • Heute: alles ist verboten, was nicht erlaubt ist! • Das Bundesdatenschutzgesetz unterscheidet Datenverarbeitung • bei Behörden und öffentlichen Stellen (z.B. Einwohnermeldeamt) • bei nicht öffentlichen Stellen für eigene Zwecke (z.B. Banken) • bei nicht öffentlichen Stellen für fremde Zwecke (z.B. Kundenkarte) • Jeder Bürger hat das Recht auf • Auskunft über die gespeicherten Daten • Berichtigung bzw. Sperrung oder Löschung von fehlerhaften Daten • Recht auf informationelle Selbstbestimmung, d.h. • Daten dürfen nur mit Einverständnis und für bestimmte Zwecke gespeichert werden! • Beispiel: Die Telekom darf Verbindungsdaten zum Zwecke der Rechnungsstellung speichern. Danach müssen sie gelöscht werden. Eine Verwendung für andere Zwecke ist nur in Ausnahmefällen erlaubt (Zugriff durch die Polizei?).

  3. Datenbankentwurf Datenbanken mit persönlichen Inhalten • bei Behörden und öffentlichen Stellen Einwohnermeldeamt Polizei Sozialamt Finanzamt ... • bei nicht öffentlichen Stellen für eigene Zwecke Bank Krankenkasse, Ärzte Telekommunikationsunternehmen, Provider Arbeitgeber, auch Schule? Maut ... • bei nicht öffentlichen Stellen für fremde Zwecke Kundenkarte Gewinnspiele ...

  4. Datenbankentwurf Eine Tabellenkalkulation als Datenbankwerkzeug Eine Tabellenkalkulation ist in Ansätzen als Datenbankwerkzeug einsetzbar: • Es können Tabellen für die Datensätze angelegt werden • Die Datenfelder sind (in Ansätzen) typisierbar • Es besteht die Möglichkeit zur Umsortierung bzw. Suche • Datensätze können direkt eingefügt/geändert und gelöscht werden • Es existieren spezielle Datenbankbenutzeroberflächen • Es existieren Schnittstellen zu anderen Datenbankwerkzeugen • Es besteht die Möglichkeit, eigene Oberflächen zu erschaffen ... aber: es besteht in der Regel keine Möglichkeit, Tabellen zu verknüpfen, Rechte gezielt zu vergeben oder die Datenbank mehreren Nutzern gleichzeitig zur Verfügung zu stellen.

  5. Datenbankentwurf kleines Begriffslexikon

  6. Datenbankentwurf allgemeine Vorgehensweise • Aufgabenstellung konkretisieren (Analyse der Realität/Miniwelt) • Charakteristische Vorgänge, benötigte Informationen, ... • Erstellen eines ER-Modells der Miniwelt • Bestimmung der Objekte, Attribute, Relationen und Schlüssel • Wahl des (Datenbank-) Werkzeugs • Excel, Access, MySQL, ... • Erstellen der Tabellen und Strukturen • Tabellen und Felder anlegen, Attribute mit geeignetem Typ festlegen, Schlüssel festlegen, ... • evtl. Erstellung von Oberflächen • Excel: Maske / SVERWEIS • Access: Abfragen / Formulare / Berichte • MySQL: phpMyAdmin als Standardoberfläche • MySQL: eigene PHP-Internetseiten zum Eintragen / Abfragen / ... • Daten eintragen, abfragen, ändern, auswerten, ...

  7. Titel Interpret CDnr CD Laenge Liedzahl Zahl Text Text Zahl/Zeit Zahl CDnr Titel Interpret Laenge Liedzahl 1 Waterloo Abba 49:32 9 2 The Wall Pink Floyd 66:12 5 3 ... ... ... ... 1 Datenbankentwurf ER-Diagramm CD-Liste Versuch 1 Probleme: 1.Die einzelnen Lieder sind nicht aufgeführt! 2.Jede CD kann nur Lieder von einem Interpreten enthalten! Allgemeines zu ER-Diagrammen (entity-relationship) CD Objekt (entity) Interpret Attribut eines Objekts Schlüsselattribut eines Objekts, muss für jedes Objekt unterschiedlich sein! CDnr leitet Beziehung (relation) zwischen 2 Objekten Kardinalität der Beziehung (1:1, 1:n, n:1 oder n:m)

  8. Redundanz! Die Information steht schon in der CD-Liste! Titel Titel Interpret Interpret Liednr CDnr enthält Laenge Lied CD 1 Liedzahl n Laenge 1 2 Summer of `69 3:35 B.Adams Liednr CDnr Titel Laenge Interpret Zahl Text Text Zahl/Zeit Zahl 3 ... ... ... ... CDnr Titel Interpret Laenge Liedzahl 1 To the bone Kinks 49:32 12 Zahl Zahl Text Zahl/Zeit Text 2 2 Heaven 4:03 B.Adams 2 So far Bryan Adams 67:12 14 3 1 Apeman 4:06 Kinks Datenbankentwurf ER-Diagramm CD-Liste Versuch 2 Probleme: 1.Jede CD kann nur Lieder von einem Interpreten enthalten! 2.Jedes Lied kann nur auf einer CD sein! Fremdschlüssel „CDnr“: Der Eintrag im Datenfeld CDnr der Tabelle Lied muss als Primärschlüssel in der Tabelle CD vorkommen!

  9. Auf jeder CD können mehrere Interpreten sein! Titel Titel Interpret Interpret Liednr CDnr enthält Laenge Lied CD 1 m Liedzahl n Laenge Jede m:n - Relation bekommt ihre eigene Zuordnungstabelle! Jedes Lied kann auf mehreren CDs sein! Cdnr 2 1 ... 2 ... 3 2 1 Liednr Zahl Zahl Text Zahl/Zeit Text CDnr Titel Interpret Laenge Liedzahl 1 To the bone Kinks 49:32 12 3 ... ... ... ... Zahl Text Text Zahl/Zeit Zahl 3 1 Apeman 4:06 Kinks 1 2 Summer of `69 3:35 B.Adams 2 2 Heaven 4:03 B.Adams 2 So far Bryan Adams 67:12 14 Liednr CDnr Titel Laenge Interpret Datenbankentwurf ER-Diagramm CD-Liste Versuch 3

  10. Ich will mehr Information über den Interpreten! Adresse Name Intnr Adresse Name Pnr enthält enga-giert Alter Interpret m m n n Plattenfirma Umsatz 1 1 ver-treibt nimmt auf Interpret CDnr Liednr n n Laenge CD Lied Liedzahl Eine m:n - Relation kann auch Attribute besitzen! Laenge Titel Position Titel Datenbankentwurf ER-Diagramm CD-Liste Versuch 4

  11. name raumart fach1 raumnr kuerzel sitze leitet Lehrer fach2 1 Raum 1 1 1 klassenname schülerzahl 1 findet statt in ge-hört hält Klasse 1 1 1 jahrgang wohnort unr stunde snr n gehörtzu hat n Schüler Unterricht tag n n name fach Datenbankentwurf ER-Diagramm der Miniwelt Schule

  12. Leser Ausleihe Buch LNr Datum Sig Autor Name ... Leser Ausleihe Buch LNr Datum Sig Autor Name ... Datenbankentwurf Beispiel aus Datenbanken.pps (Dr.Becker) Aufgabe:Worin besteht der Unterschied zwischen den beiden Modellen?

  13. Leihdatum Standort Titel BNummer Name m n Buch Benutzer Jahr leihtaus Wohnort Alter Autor Rückgabedatum Datenbankentwurf Aufgabe zu ER-Diagrammen Miniwelt Sportverein Ein Sportverein besteht aus Mitgliedern (z.B. Heike Drechsler, geb.23.3.1966, Karlsruhe), die zu bestimmten Trainingszeiten (z.B. Montag, 19 Uhr, Leichtathletik, Frauen) teilnehmen und Sport treiben. Für das Training stehen dem Verein verschiedene Sportstätten (z.B. Rasenplatz, große Halle, kleine Halle, Tennisplatz , ...) zur Verfügung. Jede Sportstätte befindet sich an einem bestimmten Ort und hat Öffnungszeiten (z.B. Schwimmbad, Herxheim, 9-21 Uhr). Aufgabe: Erstellen Sie aus der obigen Beschreibung die Miniwelt Sportverein als ER-Diagramm! Sorgen Sie bei den Objekten für sinnvolle Primärschlüssel und geben Sie auch jeweils die Art der Relation (1:1,1:n,...) an. Miniwelt Bibliothek Warum ist die Relation “leiht aus” eine m:n-Relation? Welche Tabellen müssen anhand dieses Modells angelegt werden? Geben Sie für jede Tabelle den Tabellennamen und die Namen und Typen der Datenfelder an. Sorgen Sie für geeignete Primärschlüssel für die Tabellen!

  14. Datenbankentwurf Umsetzung eines ER-Diagramms in Tabellen • Jedes Objekt braucht eine eigene Tabelle • Die Attribute des Objekts sind die Datenfelder. • Jedes Datenfeld bekommt einen Datentyp: Speicherbedarf, Vorgriff auf die Variablentypen der Programmiersprachen. • Ist das Objekt auf der „n-Seite“ einer (1:n) - Beziehung, so kommt der Primärschlüssel des Beziehungsobjekts als Fremdschlüssel hinzu. • Ist das Objekt Teil einer (1:1) - Beziehung, so kommt (zur Redundanzvermeidung) nur bei einem der beiden Objekte der Primärschlüssel des jeweils anderen Objekts hinzu. • Bei (m:n) - Beziehungen kommt nichts hinzu, denn: • Jede (m:n) - Beziehung braucht eine eigene Tabelle • Die Primärschlüssel der beiden dazugehörigen Objekte tauchen als Fremdschlüssel auf. • Alle weiteren Attribute der Beziehung tauchen als Datenfeld auf.

  15. Datenbanksystem Sammlung von Daten DB DBVS Software zur Verwaltung der Daten Anwender Anwender Datenbanksystem Ein Datenbanksystem ist eine systematisch strukturierte, langfristig verfügbare Sammlung von Daten (DB) einschließlich der zur sicheren Bearbeitung und Verwaltung dieser Daten erforderlichen Software (DBVS).

  16. Datenbanksysteme sind überall Beispiele: - Bibliothek - Bank - Reisebüro: Buchungssystem - Bahn: Auskunftssystem - Suchmaschine im Internet - ...

  17. Das Modellierungsproblem Miniwelt DB-Modellwelt Zustand: Gerd Müller ist registrierter Leser der Bibliothek. Er hat am 12.2.2002 das Buch „Fußball ist mein Leben“ von Franz Beckenbauer ausgeliehen. ... Vorgang: Gerd Müller gibt das Buch ... zurück. ? Informationen über die Miniwelt Ziel: Repräsentation von Information

  18. Repräsentation mit Tabellen Information: Gerd Müller ist registrierter Leser der Bibliothek. Er hat am 12.2.2002 das Buch „Fußball ist mein Leben“ von Franz Beckenbauer ausgeliehen. Repräsentation:

  19. Redundanz und Inkonsistenz Ausleihen Das Tabellenmodell ist redundant: Informationen werden hier z. T. mehrfach repräsentiert. Eine Transaktion (Ändern) führt leicht zu inkonsistenten Modellen: Informationen werden auf unterschiedliche Weise repräsentiert.

  20. Verknüpfte Tabellen Fremd-schlüssel Primärschlüssel Die Verknüpfung von Tabellen erfolgt mit Hilfe von Schlüsseln.

  21. Verknüpfte Tabellen Leser Buch Ausleihe

  22. Tabellenspezifikation Leser: Das logische Schema einer Tabelle wird durch eine endliche Menge von Attributspezifikationen (Attributname; Datentyp) festgelegt. TABELLE LeserLNr: ZahlName: ZeichenketteVorname: ZeichenketteGebJahr: ZahlStammkurs: Zeichenkette

  23. Datentypen / Datenstrukturen Ein Datentyp legt einen Wertebereich fest einschließlich der Operationen, die auf die Werte angewandt werden dürfen. Bsp.: Datentyp Zahl Eine Datenstruktur legt den Aufbau von komplexen Wertebereichen aus elementaren Wertebereichen fest. Bsp.: Datenstruktur Tabelle (bzw. Relation)

  24. Relation Eine Relation kann in Tabellenform dargestellt werden. { (1; “Meier”; “Karin”), (2; “Schmitt”; “Otto”), (3; “Breuer”; “Hans”) } Beachte: Die Reihenfolge der Zeilen (Tupel) ist ohne Bedeutung. Die Reihenfolge der Spalten (Attribute) ist ohne Bedeutung.

  25. Relationale Datenbank Eine relationale Datenbank besteht aus einer endlichen Menge von Relationen. Bem.: Das relationale Datenmodell wurde 1970 von E. F. Codd entwickelt. Datenbank Bibliothek: - Relation Leser - Relation Buch - Relation Ausleihe

  26. Schlüssel Primärschlüssel: Ein (Primär-) Schlüssel für eine Tabelle ist ein Attribut oder eine Attributkombination, mit dem / mit der jeder Datensatz der Tabelle eindeutig identifiziert werden kann. Schlüssel müssen immer minimal gewählt werden; d. h. man kann auf kein Attribut verzichten. Leser Ausleihe

  27. Schlüssel Fremdschlüssel: Wird ein Primärschlüssel einer Tabelle in einer anderen Tabelle benutzt, so stellt er dort einen Fremdschlüssel dar. Mit Hilfe von Fremdschlüsseln werden Bezüge zwischen Tabellen hergestellt. Ausleihe

  28. Referentielle Integrität Buch Ausleihe Referentielle Integrität Wenn in einer Tabelle ein Fremdschlüssel vorhanden ist, dann muss jeder Fremdschlüsselwert auch als Primärschlüsselwert in der korrespondierenden Tabelle vorkommen.

  29. Übungen - Aufgabe 1 Miniwelt „Schule“ Herr P. Müller (MP) unterrichtet die Klasse 5a (Raum M21) in den Fächern Mathematik und NWU. Frau A. Albrecht (AL) unterrichtet die 5a in Französisch. Sie ist auch Klassenlehrerin der 5a. Die Französischstunden finden Mo 3 | Di 2 | Mi 6 | Fr 1 statt. (...) Entwerfen Sie ein relationales Datenmodell zu dieser Miniwelt und implementieren Sie es mit Access. Erstellen Sie hierzu die entsprechenden Tabellen (in der Entwurfsansicht), geben Sie einige Testdaten ein und verknüpfen Sie die Tabellen (Primärschlüssel festlegen und Beziehungen knüpfen).

  30. Aufgabe 1 - Lösungsvorschlag Miniwelt „Schule“ Herr P. Müller (MP) unterrichtet die Klasse 5a (Raum M21) in den Fächern Mathematik und NWU. Frau A. Albrecht (AL) unterrichtet die 5a in Französisch. Sie ist auch Klassenlehrerin der 5a. Die Französischstunden finden Mo 3 | Di 2 | Mi 6 | Fr 1 statt. (...)

More Related