Datenbanksysteme (WiSem
2016/2017, VAK 03-BB-703.01, 6 SWS / 8 ECTS) |
Überblick: |
In der Vorlesung Datenbanksysteme werden zunächst kurz
die historische Entwicklung, die Aufgaben und die
Architektur von Datenbanksystemen skizziert. Hieran
anschliessend werden unterschiedliche Datenmodelle,
insbesondere das Entity-Relationship-Modell, das
Relationen-Modell und ein objektorientiertes Datenmodell,
diskutiert. Ein weiterer Abschnitt über Relationale
Datenbank-Sprachen beschreibt nach einer einführenden
Klassifikation dieser Sprachen die Relationen-Algebra und
zwei Relationen-Kalküle als Grundlage für
deskriptive Anfragesprachen. Konkrete kalkülbasierte
Sprachen wie SQL, QUEL und QBE werden vorgestellt. Der
anschliessende Stoff über Programmierschnittstellen
stellt die in diesem Zusammenhang wichtigsten Konzepte zum
relationalen Datenmodell vor. Im folgenden Teil über
Datenintegrität und Datenschutz werden nach einer
Begriffsklärung insbesondere Integritätsregeln in
Datenbanksprachen eingeführt. Zum Abschluss der
Vorlesung werden zentrale Begriffe und Verfahren aus dem
relationalen Datenbankentwurf diskutiert.
The course Database Systems shortly sketches the historical
development, the tasks, and the architecture of database
systems. Following this, different data models, in
particular the Entity-Relationship Model, the Relational
Model and an Object-Oriented Data Model, are discussed. The
next section on Relational Database Languages described
after an introductory classification of such languages the
Relational Algebra and two Relational Calculi serving as
foundations for descriptive database languages. Concrete
calculus-based languages like SQL, QUEL, and QBE are
introduced. The following subject on Programming Interfaces
discusses the most important featuress of the Relational
Model needed in this context. After having discussed the
basic relevant notions, in the next part on Data Integrity
and Security, integrity rules in database lanuguages are
introduced. In the last part of the course, central notions
and algorithms from Relational Database Design are
discussed.
|
Hinweise: |
Mögliche Fragen zu Datenbanksystemen in den mündlichen Prüfungen (txt-file) Für Prüfungen über 6 CP entfallen die Fragen zum relationalen Datenbankentwurf.
|
Vorlesung im Stud.IP: |
Bitte meldet euch im Stud.IP zur Vorlesung an. Alle Ankündigungen werden über Stud.IP versandt.
Please register with the lecture on Stud.IP. All announcements will be made via Stud.IP.
Kurs: Datenbanksysteme auf Stud.IP
|
Termine: |
Vorlesung:
- Donnerstag 10:15 – 11:45, MZH 1090
- Donnerstag 14:15 – 15:45, MZH 1090
Übung:
- Mittwoch 16:15 – 17:45 Uhr, MZH 5210
- Ab der 2. Vorlesungswoche! (26.10.2016)
|
Literatur: |
-
A. Heuer, G. Saake, K.-U. Sattler: Datenbanken - Konzepte und Sprachen,
3., aktualisierte und erweiterte Auflage. Mitp-Verlag,
Bonn. 2007.
-
R. Elmasri, S. B. Navathe: Grundlagen von
Datenbanksystemen, 3. überarbeitete Auflage.
Addison-Wesley, Pearson Studium, München. 2002.
|
Material zur Vorlesung: |
Folien und ergänzendes Material:
-
Vorstellung der Veranstaltung (pdf-file)
-
Entwicklung und Aufgaben von DBS (pdf-file) – Beispiele und Ergänzungen (pdf-file)
-
Datenmodelle (pdf-file) – Beispiele und Ergänzungen (pdf-file)
-
Überblicksbeispiel zu ER-UML (pdf-file)
- Bibliotheksdatenbank mit UML-Klassendiagramm und DB-Zustand als UML-Objektdiagramm (Folien Dokumentation, USE-File use-file, CMD-File zur Erzeugung des Zustandes cmd-file)
- Relationale DB-Sprachen (pdf-file) – Beispiele und Ergänzungen (pdf-file)
- SQL - kompakte Darstellung anhand von Beispielen in PostgreSQL (file)
-
Relationaler Datenbank-Entwurf (pdf-file)
- Relationaler Datenbankentwurf mit dem Werkzeug DatabaseNormalizer (pdf-file)
-
Crash Course RA, DC, TC, SQL with three easy examples (pdf-file)
-
Weiteres Material wird hier im Laufe der Veranstaltung zur Verfügung gestellt.
|
Scheinerwerb durch Hausarbeit: |
Die Hausarbeit ist spätestens bis zum 02. März abzugeben. Legt bitte eine gedruckte, gebundene Version in mein (Frank Hilken) oder Martins Fach und schickt mir ebenfalls ein Zip Archiv per Mail mit der Hausarbeit als PDF sowie den Quellen für eure Modelle und Skripte. Achtet darauf, dass in der Hausarbeit markiert ist, wer welche Teile erarbeitet hat.
Richtlinien fü:r Hausarbeiten:
- Bearbeitung in 3er Gruppen
- Pro Person ca. 12 – 16 Seiten
- (Informelle) Präsentation von Zwischenergebnissen im Tutorium
- Thema 'Datenbankentwurf'
-
Befolgung der folgenden Strukturvorgaben
Informelle Beschreibung einer Anwendungssituation;
Abstimmung mit den Betreuern
-
Konzeptioneller Entwurf als UML Klassendiagramm und ER-Schema
(Alternative Modellierungsmöglichkeiten diskutieren; ungefähr 10–15 Klassen/Entitytypen)
- Grundsätzlich: Sinnhafte, aber dennoch
möglichst kurze, und sprechbare Bezeichner
für alle Modellelemente wählen; also z.B.
für Entitytypen (z.B. PERSON, COMPANY, FLUG,
MITARBEITER), Attribute (z.B. Salary, Gehalt, Preis),
Beziehungen (z.B. WorksFor, Job, Employment, Marriage,
Fatherhood, Authorship, Mutterschaft, Ehe,
Arbeitsverhätnis, Arbeitsverhaeltnis), Bezeichner
entweder einheitlich Deutsch oder einheitlich Englisch,
Bezeichner in der Regel ohne Unterstrich
- Verbale Erläuterung der Klassen/Entitytypen,
Attribute, Beziehungen und Multiplizitätsangaben,
gegebenenfalls auch der Vererbungsbeziehungen
- Quick Tour zum USE Tool im Wiki und ein ausfürlicheres Manual als PDF
Integritätsbedingungen
- Informelle Definition und Erläuterung
- Formale Definition (mit OCL und RA oder TK)
- Überlegungen zur Konsistenz,
Vollständigkeit und Unabhängigkeit der
Gesamtheit der Integritätsbedingungen
Systemzustände vom Modell instanzieren (mit USE-Tool)
- Einen Zustand der alle Invarianten und Modelleigenen Bedingungen (Multiplizitäten) erfüllt
- Ungewollte Zustände, welche die Wirksamkeit der Invarianten und Multiplizitäten zeigen
Realisierung als Relationales DB-Schema
- Anwendung des Standardverfahrens
- Besonderheiten der Schema-Übersetzung
- Übersetzung der Integritätsbedingungen
- Vermeidung von Redundanz und Anomalien
Sichten
- Übersicht/Zusammenfassung von bestehenden Daten
Standardanfragen mit SQL und einer anderen formalen Sprache (z.B. in OCL, RA, TK, oder BK)
- Standardabfragen beantworten im Gegensatz zu Sichten immer eine konkrete Frage
-
Beispiele aus Vergangenen Semestern
(pdf-1,
pdf-2,
pdf-3,
pdf-4,
pdf-5)
Beachtet das die Aufgabenstellung von Semester zu Semester variieren kann.
- Artikel Beispiel aus Tutorium als USE File mit Datenbankstruktur als Kommentar
Semesterbegleitende Abgaben zur Hausarbeiten:
|