Dozentinnen/Dozenten: Prof. Dott. Ing. Roberto V. Zicari, Dr. Karsten Tolle and Todor Ivanov

Aktuelles:
Klausur Einsichttermin (Klausur vom 3. April)  ist Montag 29.04.2019 – Matheturm RMS-10, 5. Stock, Raum 501

Matrikelnummer < 6300000 –> 09:30 bis 10:30 Uhr
Matrikelnummer > 6300000 –> 11:30 bis 12:30 Uhr

Bemerkungen zur Einsicht: Bei der Klausureinsicht sind Korrekturen in beide Richtungen möglich. Wer zum Ende des Termins kommt, kann nicht erwarten, dass wir ihm die Einsicht über den Zeitslot hinaus gewähren. An sich ist die Dauer der Einsicht ist pro Teilnehmer auf höchstens 15 Minuten beschränkt.

Inhalt:

  • Einführung
  • Relationales Datenmodell
  • Relationale Algebra
  • SQL
  • Logische Optimierung
  • Normalformen
  • Transaktionen
  • verteilte Datenbanken

QIS:
Die Veranstaltung im QIS der Goethe Universität – Datenbanksysteme 1

Vorlesungen:
Mittwoch 10:15 – 11:45 Uhr, Hörsaaltrakt Bockenheim – H V
Donnerstag 14:15 – 15:45 Uhr, Hörsaaltrakt Bockenheim – H VI

Übung:
Freitag 14:15 – 15:45 Uhr, Hörsaaltrakt Bockenheim – H V

Übungsabgaben und Bonuspunkte:

Ausgabe und Abgabe erfolgt über OLAT (Kurs URL: https://olat-ce.server.uni-frankfurt.de/olat/auth/RepositoryEntry/6312001545?6)

Sprechstunde zum SQLChecker von Herrn Patrick Bonack: Jeweils Donnerstags vor der Vorlesung ab 13:00 Uhr im Matheturm, 5. Stock, DBIS – Raum 502.

Das 1. Übungsblatt (zum Testen noch ohne Bonuspunkte!) ist ab dem 02.11.2018 ~10:00 Uhr auf OLAT zugänglich. Abgabe ist bis zum 16.11.2018 um 23:55 Uhr über OLAT möglich.
Es wird empfohlen zur Erstellung einer Lösung SQLChecker zu verwenden. Die aktuelle Version kann heruntergeladen werden unter: https://github.com/ptrckbnck/SQLChecker/releases ,
das aktuelle Benutzerhandbuch unter: https://github.com/ptrckbnck/SQLChecker/blob/master/userdoc-1.0.pdf.

Das 2. Übungsblatt wird am 23.11.2018 ausgegeben.

Das 3. Übungsblatt wird am 07.12.2018 ausgegeben.

Das 4. Übungsblatt wird am 18.01.2019 ausgegeben.

Klausuren:

1. Klausur: 15. Februar 2019 (Freitag) von 13:00 bis 16:00 Uhr
2. Klausur: 03. April 2019 (Mittwoch) von 10:00 bis 13:00 Uhr

 

Datum Type Inhalt Unterlagen
24.10.2018 Vorlesung Organisatorisches und Einführung Folien Organisatorisches und Einführung
25.10.2018 Vorlesung Relationales Datenmodell Folien relationales Datenmodell
26.10.2018 Übung Anforderungsanalyse, Konzeption (ER-Diagramm), rel. Datenmodell, MySQL/Workbench, SQL (Einführung) Bonuspunkte Regelung
31.10.2018 Vorlesung Relationales Datenmodell  s.o.
01.11.2018 Vorlesung Operationen auf Relationen  s.o.
02.11.2018 Übung Vorstellung SQLChecker / ER –> rel. Datenmodell
07.11.2018 Vorlesung Sprachen für das Relationen Modell
08.11.2018 Vorlesung SQL  s.o.
09.11.2018 Übung Relationale Algebra Übungsblatt 2018 11 09,  Folien_uebung2_update
14.11.2018 Vorlesung SQL  s.o.
15.11.2018 Vorlesung SQL Referentielle Integritaet
16.11.2018 Übung SQL
21.11.2018 Vorlesung Logische Optimierung Logische Optimierung
22.11.2018 Vorlesung Funktionale Abhängigkeit / Normalformen Normalformen Bem.: Wegen der Erneuerung des Beamers in H VI findet die Vorlesung in H IV statt (zwei Etagen tiefer).
23.11.2018 Übung  Feedback Blatt1 / Ausgabe Blatt2 / Logische Optimierung  Uebungsblatt
28.11.2018 Vorlesung Transaktionen  Transaktionen
29.11.2018 Vorlesung  Prakt. SQL 1 – Todor Ivanov
30.11.2018 Übung  Prakt. SQL 2 – Todor Ivanov  Praktische_SQL_Übungen_2
05.12.2018 Vorlesung Transaktionen  s.o.
06.12.2018 Vorlesung Transaktionen  s.o.
07.12.2018 Übung SQL Functions – Blatt 2 und Blatt 3 – NF Folien
12.12.2018 Vorlesung Optimistic Concurrency Control  s.o.
13.12.2018 Vorlesung Transaktionen in Praxis – Karsten Tolle  Folien Transaktionen – Praxis
14.12.2018 Übung Übungsblatt
19.12.2018 Vorlesung Übung  s.o. und Zeitstempelverfahren
20.12.2018 Vorlesung Übung  Uebersicht_bisher  und AufgabenNF
21.12.2018 Übung enffällt – keine Übung
26.12.2018 Weihnachten
27.12.2018
28.12.2018
02.01.2019
03.01.2019
04.01.2019
09.01.2019
10.01.2019
11.01.2019
16.01.2019 Vorlesung Programmieren und DBMS I – Karsten Tolle  Programmieren_DBMS
Quellcode des gezeigten Programms (Java) – aus dem Package db:
Programmieren_DB_JavaCode
Einen JDBC-Treiber für MySQL (MariaDB) findet ihr hier: https://dev.mysql.com/downloads/connector/j/
17.01.2019 Vorlesung Programmieren und DBMS II – Karsten Tolle  s.o.
18.01.2019 Übung
23.01.2019 Vorlesung verteilte Datenbanken  Chapter25
Ramez Elmasri and Shamkant B. Navathe
24.01.2019 Vorlesung verteilte Datenbanken  s.o.
25.01.2019 Übung enffällt – keine Übung
30.01.2019 Vorlesung Übung
31.01.2019 Vorlesung enffällt – keine Vorlesung
01.02.2019 Übung
06.02.2019 Vorlesung Gastvortrag ADASTRA  Folien
07.02.2019 Übung extra Übung (insb. Transaktionen) FolienExtraUebung
08.02.2019 Übung Fragen und Antworten Folien8Feb
13.02.2019 eigene Vorbereitung – keine Vorlesung
14.02.2019 eigene Vorbereitung – keine Vorlesung
15.02.2019 Klausur – von 13:00 bis 16:00 Uhr  Räume und Verteilung wird noch bekannt gegeben

 

Vorwissen:

Die Lerninhalte von PRG-2 insbesondere zu den Bereichen Modellierung und ER-Modelle werden vorausgesetzt. Unterlagen hierzu sind auf den Seiten von PRG-2 (http://www-stud.rbi.informatik.uni-frankfurt.de/~prg2/) zu finden. Ebenfalls gibt es hier die früheren Folien aus alten DB1 Veranstaltungen zum Selbststudium.

Installation von MySQL oder MariaDB

In Rahmen der Vorlesung und der Übungsaufgaben kann entweder MySQL oder MariaDB verwendet werden. Beide Datenbanken verhalten sich annähernd identisch hinsichtlich der in den Übungsaufgaben geforderten SQL-Lösungen. Auch der MySQL Workbench, ein grafisches Werkzeug zum Verwalten einer Datenbank, funktioniert mit beiden Versionen.

Fällt die Wahl auf MySQL, so sollte darauf geachtet werden, dass die Community Edition (MySQL Community Server) runtergeladen und installiert wird: https://dev.mysql.com/downloads/mysql/. Eine Installationsanleitung befindet sich in der MySQL Dokumentation: https://dev.mysql.com/doc/refman/8.0/en/installing.html

Fällt die Wahl auf MariaDB, so kann die aktuelle Version (aktuell MariaDB 10.3 Series) hier runtergeladen werden: https://downloads.mariadb.org/. Die Installation läuft unter Windows ähnlich wie bei MySQL über eine grafische Nutzeroberfläche ab.

Literatur:

  • Batini, Ceri, Navathe, ‚Database Design: An Entity Relationship Approach‘, Addison Wesley, 1991
  • J. Ullman, ‚Principles of Database Systems‘, 2d ed., Computer Science Press, 1982
  • A. Kemper, A. Eickler: ‚Datenbanksysteme – Eine Einführung‚, 7. Auflage Oldenburg Verlag, 2009

Weiterführende Literatur:

  • Ramez Elmasri und Shamkant B. Navathe, ‚Grundlagen von Datenbanksystemen‘, Pearson Studium, 2009
  • Ramez Elmasri and Shamkant B. Navathe, ‚Fundamentals of Database Systems‘, Addison Wesley, 2006
  • Gottfried Vossen, ‚Datenbankmodelle, Datenbanksprachen, Datenbankmanagement-Systeme‘, Oldenbourg, 2008
  • H. Faeskorn-Woyke, B. Bertelsmeier, P. Riemer, E. Bauer, ‚Datenbanksysteme, Theorie und Praxis mit SQL2003, Oracle und MySQL‘, Pearson Studium, 2007
  • Bernstein, Hadzilacos, Goodman, ‚Concurrency Control and Recovery in Database Systems‚, Addison-Wesley, 1987
  • M. Schubert, ‚Datenbanken, Theorie, Entwurf und Programmierung rationaler Datenbanken‘, Vieweg+Teubner, 2007
  • M. Pollakowski, ‚Grundkurs MySQL und PHP‘, Vieweg+Teubner, 2005