Datenbanksysteme (WiSem 2017/2018, 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.
|
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 5210
- Donnerstag 14:15 – 15:45, MZH 5210
Übung:
- Mittwoch 16:15 – 17:45 Uhr, MZH 5210
- Ab der 2. Vorlesungswoche! (25.10.2017)
|
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:
|
Scheinerwerb durch mündliche Prüfung: |
- Mögliche Fragen und Fragenbereiche Datenbanksysteme (txt-file)
- Kern des DBS-Prüfungsstoffes (zip-file)
- Entweder 8 ECTS oder 6 ECTS
- Für Prüfungen über 6 ECTS entfallen die Fragen zum relationalen Datenbankentwurf
- Dauer bei beiden Möglichkeiten ca. 20min
- Prüfungstermine sind im Stud.IP Wiki zu finden. Dort erfolgt auch die Eintragung.
|
Scheinerwerb durch Hausarbeit: |
- Abgabe Hausarbeit
- Spätester Termin: 28.02.2018
- Es soll in der Hausarbeit markiert sein, welches Gruppenmitglied welchen Teil bearbeitet hat
- Komplette Hausarbeit als PDF per Mail an Andreas Kästner (Falls USE benutzt wurde, zusätzlich alle .use, .soil, .clt und .olt Dateien)
- UND gedruckte Version der Hausarbeit in das Fach 33 in der Ebene 6 MZH (keine losen Blätter, z.B. in einer Mappe oder gebunden)
- 8 ECTS
- Bearbeitung standardmäßig in 3er Gruppen
- Pro Person mind. ca. 12 – 16 Seiten
- (Informelle) Präsentation von Zwischenergebnissen im Tutorium
- Thema 'Datenbankentwurf'
- Beispiele aus vergangenen Semestern
(Throw It Away,
TauDBsi,
Onlineshop)
Beachtet dass die Aufgabenstellung von Semester zu Semester variieren kann.
- Befolgung der folgenden Strukturvorgaben
Informelle Beschreibung einer Anwendungssituation; Abstimmung mit den Betreuern
Konzeptioneller Entwurf als UML Klassendiagramm oder 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
- Mindestens eine funktionale Beziehung (0..1 zu *), eine beliebige Beziehung (* zu *) und eine Vererbungs-Beziehung
- Verbale Erläuterung der Klassen/Entitytypen, Attribute, Beziehungen und Multiplizitätsangaben, gegebenenfalls auch der Vererbungsbeziehungen
- USE Tool Download, Quick Tour zum USE Tool im Wiki und ein ausfürlicheres Manual als PDF
Integritätsbedingungen
- Informelle Definition und Erläuterung
- Formale Definition (mit SQL oder TK)
- Überlegungen zur Konsistenz und
Vollständigkeit der
Gesamtheit der Integritätsbedingungen
Systemzustände vom Modell instanzieren
- Einen Zustand der alle Invarianten und inhärenten Bedingungen (Multiplizitäten) erfüllt
- Ungewollte Zustände, welche die Wirksamkeit der Invarianten und Multiplizitäten zeigen
Realisierung als Relationales DB-Schema
Sichten
- Übersicht/Zusammenfassung von bestehenden Daten
Standardanfragen mit SQL und RA
- Standardabfragen beantworten im Gegensatz zu Sichten immer eine konkrete Frage
- Die SQL und RA Anfragen können jeweils die gleichen oder auch verschiedene Fragen beantworten. Auf jeden Fall sollen aber mindestens 3 RA Anfragen formuliert werden.
|
Material zum Tutorium: |
Allgemeines Material:
Material zur Hausarbeit:
|