Datenmodellierung_LP

Werbung
Datenmodellierung
- Aufbau einer Datenbank -
Einsatz eines Datenbankprogramms
im Unterricht
Aufgabe: Kundendaten
Ein Fahrradzubehörhersteller hat verschiedene
Kunden, an die er verschiedene Artikel verkauft.
Diese Daten sollen in einer Datenbank verwaltet
werden.
Folgende Informationen sollen herausgefiltert
werden:
- Kundenliste eines bestimmten Ortes
- Bestellungen durch einen bestimmten Kunden
- Rechnung für eine Kundenbestellung
Grundüberlegungen zum Aufbau der
Datenbank
•
Welche Daten sollen erfasst werden?
•
Wie sind die Daten strukturiert?
-> KLASSEN und deren BEZIEHUNGEN
(semantisches Datenbankmodell)
•
Wie sieht das logische Datenbankmodell aus?
-> Umsetzung des semantischen Datenbankmodells in ein
relationales Datenbankmodell
•
Implementierung mit einem DBMS (z.B. ACCESS)
•
Realisierung von Abfragen mit SQL
•
Erstellung eines Berichts (Rechnung für Kunden)
Modellierung:
1. Abgrenzung gegen die Umwelt
Welche „Dinge“ sind für die Problemstellung wichtig, welche kann ich weglassen?
z. B. Fahrzeug, mit dem ein Kunde fährt.
Modellierung:
2. Abstraktion / Idealisierung
Von den Dingen die wichtig sind (Kunden, Orte, Artikel) werden nicht alle Aspekte betrachtet
sondern nur die Attribute, die relevant sind. Details werden vernachlässigt (z.B. die Größe des
Kunden) = Abstraktion.
Es können aber auch neue Attribute eingeführt werden (z.B. Kundennr.) = Idealisierung
Dadurch entstehen gleichartig strukturierte Objekte.
Modellierung:
3. Aggregation - Klassen
Gleichartige Objekte mit festgelegten Attributen werden zusammengefasst – es entstehen Klassen:
Klasse „Kunde“ besteht aus Vorname, Nachname, Straße, Tel.Nr.
Klasse „Ort“ besteht aus Ortsname und PLZ
Klasse „Artikel“ besteht aus Artikelname und VK-Preis
Modellierung:
4. Assoziation -> Klassenbeziehungen
Die Assoziation (kurz Beziehung oder Klassenbeziehung) beschreibt die gemeinsame Struktur
einer Menge von Objektverbindungen. Sie beschreibt wie die konkrete Objektbeziehung zwischen
zwei Objekten dieser Klassen aussieht.
Umsetzung des semantischen Modells
in ein logisches Datenbankmodell
1. Darstellung von Klassen in Tabellen
Umsetzung des semantischen Modells
in ein logisches Datenbankmodell
2. Einrichten von Klassenbeziehungen
Jetzt werden die Klassenbeziehungen auf das relationale Datenmodell abgebildet.
1:n lässt sich mit einem Fremdschlüssel umsetzen.
Der Fremdschlüssel ist eine zusätzliches Attribut in einer Tabelle, das in einer anderen Tabelle
Primärschlüssel ist.
Umsetzung des semantischen Modells
in ein logisches Datenbankmodell
2. Einrichten von Klassenbeziehungen
Für eine n:m Beziehung benötigt man eine zusätzliche Tabelle (Beziehungstabelle).
In die Beziehungstabelle werden die Primärschlüssel der zugehörigen Tabellen als
Fremdschlüssel aufgenommen.
Umsetzung des semantischen Modells
in ein logisches Datenbankmodell
2. Einrichten von Klassenbeziehungen
Grafische Datenbanksysteme unterstützen die Darstellung und den Aufbau
des relationalen Datenmodells.
Umsetzung des semantischen Modells
in ein logisches Datenbankmodell
Klassen und Beziehungstabelle in Tabellenansicht:
Umsetzung des semantischen Modells
in ein logisches Datenbankmodell
Was heißt nun modellieren?
Von einem realen System ausgehend, versucht man durch Systemanalyse,
ein abstraktes Modell herzustellen.
Zur Umsetzung des abstrakten Modells in eine Repräsentation gibt es in der Informatik
viele Konzepte (z.B. Objektorientierte Modellierung).
Realisierung von Abfragen mit SQL
Kundenliste eines bestimmten Ortes:
Es sollen alle Kunden erscheinen, die im Ort 3 wohnen!
Realisierung von Abfragen mit SQL
Bestellungen durch einen bestimmten Kunden:
Welche Artikel hat ein bestimmter Kunde bestellt?
(Daten aus mehreren Tabellen auswählen!)
Realisierung von Abfragen mit SQL
Umsatz je Artikel
Wie groß ist der Umsatz je Artikel?
Realisierung von Abfragen mit SQL
Bestellnummer mit Gesamtpreis und MWST
am Beispiel der Bestellnummer 10
Bericht zur Abfrage:
Bestellnummer mit Gesamtpreis und MWST - Rechnung
Herunterladen