[Stud.IP]      [Übung]      [Themen]      [Dozent]      [Termine]      [Materialien]      [Punkte-DB]      [Ablauf]      [Bücher]      [Software]      [Links]

 

MARTIN-LUTHER-UNIVERSITÄT HALLE-WITTENBERG
Institut für Informatik
Prof. Dr. Stefan Brass

Datenbanken I

(Winter 2007/2008)

Aktuelles:


Themen


In den Übungen wird das Datenbanksystem Oracle eingesetzt. In der Vorlesung werden aber auch die wichtigsten Unterschiede zu IBM DB2, Microsoft SQL Server, MySQL und Access erläutert. Dieser Kurs wird auch im Rahmen der "Oracle Academic Initiative" veranstaltet. Der Dozent ist Oracle Certified Professional (Oracle8 DBA) und IBM Certified Advanced Database Administrator (DB2 UDB V8.1). Wir werden uns bemühen, Ihnen auch IBM DB2 verfügbar zu machen (für freiwillige, eigene Übungen).

 


Dozent


Dr. Stefan Brass

Büro:
Raum 313 (Institut für Informatik, Von-Seckendorff-Platz 1)
Sprechstunde:
Mittwochs, 12:00-13:00 (und direkt nach den Vorlesungen)
Email:
brass@acm.org
Telefon:
0345/55-24740 (Büro), 0345/2036337 (zu Hause, bitte nur 8-13, 16-21)
Fax:
0345/55-27333 (im Sekretariat)
Sekretariat:
Frau Vahrenhold, Telefon 0345/55-24750, Zimmer 324 (dienstags geschlossen)

 


Übungsleiterin


Dr. Annemarie Herrmann

Büro:
Raum 315 (Institut für Informatik, Von-Seckendorff-Platz 1)
Sprechstunde:
Nach Vereinbarung.
Email:
herrmann(at)informatik.uni-halle.de
Telefon:
0345/55-24737
WWW-Seite der Übungen:
http://www.informatik.uni-halle.de/dbs/Lehre/DBI07_08/

 


Termine


Vorlesung:

Übung:

 


Vorlesungsmaterialien


Folien (dieses Semester, aktuell):

Folien aus dem letzten Jahr (werden möglicherweise noch überarbeitet):

Hinweis:

Beispiel-Datenbanken:

  1. Komponisten, Stücke, CDs:
                [UNIX] [Windows]
  2. US-Presidenten:
                [UNIX] [Windows]

Frühere Klausuren:

  1. Zwischenklausur aus dem Wintersemester 2000/2001
                [Postscript]   [PDF]
  2. Endklausur aus dem Wintersemester 2000/2001
                [Postscript]   [PDF]
  3. Klausur aus dem Wintersemester 2001/2002
                [Postscript]   [PDF]   [Beispiel-DB (UNIX)]   [Beispiel-DB (Windows)]
  4. Klausur aus dem Sommersemester 2002
                [Postscript]   [PDF]   [Lösung: Postscript]   [Lösung: PDF]
  5. Zwischenklausur aus dem Wintersemester 2002/2003
                [Postscript]   [PDF]
  6. Endklausur aus dem Wintersemester 2002/2003
                [Postscript]   [PDF]
  7. Zwischenklausur aus dem Wintersemester 2003/2004
                [Postscript]   [PDF]
  8. Endklausur aus dem Wintersemester 2003/2004
                [Postscript]   [PDF]

Frühere Klausuren (in Englisch):

Siehe auch:


Ablauf


1. Mi, 10.10.2007:
Kapitel 0: Informationen zur Vorlesung / Organisatorisches (Folie 0-1 bis 0-33)
Kapitel 1: Einführung (Folie 1-1 bis 1-8)
Aufgabe einer Datenbank, Anfrage, Update, Zustand
2. Do, 11.10.2007:
Kapitel 1: Einführung (Folie 1-8 bis 1-39)
Zustand, Schema, Datenmodelle, DDL, DML, Query Language, DBMS, Datenbank-Anwendungssystem, Client-Server-Architektur, Three-Tier-Architektur, Persistente Daten, klassische Speicherung von Datensätzen in Dateien
3. Mi, 17.10.2007:
Kapitel 1: Einführung (Folie 1-40 bis 1-65, Rest in Schnelldurchlauf/Selbststudium)
DBMS als Unterprogrammbibliothek für Programmierer, Datenunabhängigkeit, ANSI/Sparc Drei-Schema-Architektur, weitere DBMS-Funktionen (Transaktionen, Sicherheit, Systemkatalog), DBMS-Anbieter.
4. Do, 18.10.2007:
Kapitel 2: Logik mit Datenbank-Anwendungen (Folie 2-1 bis 1-52)
Einführung, Motivation, Geschichte, Alphabet, Signatur, Interpretation, Relationales Modell (Bereichskalkül, Tupelkalkül), ER-Modell
5. Mi, 24.10.2007:
Kapitel 2: Logik mit Datenbank-Anwendungen (Folie 2-53 bis 2-91)
Variablendeklaration, Term, atomare Formel, Formel, Variablenbelegung, Wert eines Terms, Gültigkeit einer Formel, konsistent, Tautologie, Modell
6. Do, 25.10.2007:
Kapitel 2: Logik mit Datenbank-Anwendungen (Folie 2-92 bis 2-110)
Anwendung von Formeln in Datenbanken, Integritätsbedingungen, Anfragen im Bereichskalkül, QBE
7. Do, 01.11.2007:
Kapitel 2: Logik mit Datenbank-Anwendungen (Folie 2-110 bis 2-158)
ER-Kalkül, Tupelkalkül, Anfrageformulierung, Auswertung von Formeln, Bereichsunabhängigkeit, Bereichsbeschränkung, Implikation, Äquivalenz, bekannte logische Äquivalenzen
8. Mi, 07.11.2007:
Kapitel 3: Relationale Algebra (Folie 3-1 bis 3-51)
Wiederholung zum relationalen Modell (inkl. Schüssel, Fremdschlüssel), Bedeutung der relationalen Algebra, Selektion, Projektion, Schacheltung von Operationen, kartesisches Produkt.
9. Do, 08.11.2007:
Kapitel 3: Relationale Algebra (Folie 3-49 bis 3-76)
Kartesisches Produkt, Umbenennung, Verbund/Join, Semijoin, Natürlicher Verbund, algebraische Gesetze, Anfragemuster: Verbund/Selektion/Projektion, Selbstverbund
11. Mi, 14.11.2007:
Kapitel 3: Relationale Algebra (Folie 3-77 bis 3-96)
Mengenoperationen, Vereinigung, Mengendifferenz, nichtmonotone Anfragen, Vorrechnen von Beispielen, Anti-Join, Vereinigung vs. Verbund, Äußerer Verbund
12. Do, 15.11.2007:
Kapitel 3: Relationale Algebra (Folie 3-95 bis 3-121)
Äußerer Verbund, Zusammenfassung: Kurzgefasste ziemlich formale Definition der Relationenalgebra, Grenzen der Relationenalgebra, Transitive Hülle, Vergleich der Ausdruckskraft von Anfragesprachen, streng relational vollständig.
Kapitel 4: SQL I (Folie 4-1 bis 4-30)
Von relationaler Algebra zu SQL, Vom Tupelkalkül zu SQL, Bedeutung und Geschichte von SQL, Standards, Syntax-Graphen, SELECT-FROM-WHERE
13. Mi, 21.11.2007:
Kapitel 4: SQL I (Folie 4-25 bis 4-70)
Lexikalische Syntax, Zahlkonstanten, Zeichenkettenkonstanten, Bezeichner, Reservierte Wörter, Delimited Identifier, Tupelvariablen, naiver Auswertungsalgorithmus, Verbunde/Joins, Anfrageformulierung, unnötige Joins, Selbstverbund, typische Fehler
14. Do, 22.11.2007:
Gastvorlesung Frau Dr. Herrmann (ich war auf dem Fakultätentag)
PL/SQL
15. Mi, 28.11.2007:
Kapitel 4: SQL I (Folie 4-71 bis 4-114, 4-124 bis 4-136)
Syntax der FROM-Klausel, Terme, Bedingungen, AND, OR, NOT, Vergleiche, Zeichenketten-Vergleiche, Collation Sequence, numerische Vergleiche vs. String-Vergleiche, BETWEEN-Bedingungen, LIKE-Bedingungen, IN-Bedingungen (mit expliziter Menge), Syntax der SELECT-Klaususel, DISTINCT, Hinreichende Bedingung für unnötiges DISTINCT, Umbenennen von Ausgabespalten
16. Do, 29.11.2007:
Kapitel 2: Mathematische Logik mit Datenbank-Anwendungen (Folie 2-159 bis 2-176)
Dreiwertige Logik, Nullwerte
Kapitel 4: SQL I (Folie 4-115 bis 4-123)
Dreiwertige Logik in SQL, Nullwerte, IS [NOT] NULL, Probleme und Überraschungen mit Nullwerten.
Kapitel 5: SQL II (Folie 5-1 bis 5-27)
Wiederholung zu monotonen und nichtmonotonen Anfragen, NOT IN, NOT EXISTS, korrelierte und unkorrelierte Unteranfragen, Blockstruktur (Definitionsbereich von Tupelvariablen), Regel für Attributreferenzen mit impliziter Tupelvariable, Alternativen für SELECT-Klausel in EXISTS-Unteranfragen.
17. Mi, 05.12.2007:
Kapitel 5: SQL II (Folie 5-27 bis 5-65)
EXISTS-Unteranfragen, Allaussagen, verschachtelte Unteranfragen, häufige Fehler, IN vs. EXISTS, Verhalten von IN bei einem Nullwert im Ergebnis der Unteranfrage, ALL/ANY/SOME, Verwendung von Unteranfragen als Term, Unteranfragen unter FROM, Ausblick auf Sichten (VIEWs), Aggregationsfunktionen
18. Do, 06.12.2007:
Kapitel 5: SQL II (Folie 5-62 bis 5-94)
Besprechung einer kleinen Probeklausur (Umfrage). Aggregationsfunktionen, Aggregationsterme, Nullwerte in Aggregationen, Aggregationen über die leere Menge, Einfache Aggregationsanfragen (liefern genau ein Tupel), Auswertung, Anfragen mit GROUP BY, HAVING.
...


Voraussetzungen zur Teilnahme



Prüfung, Übungsscheine


Die folgenden Informationen sind noch unverbindlich bzw. nicht ganz vollständig. Sie sollten sich besser in Ihrem Prüfungsamt informieren.

Modulvorleistung sind 50% der Hausaufgabenpunkte und aktive Teilnahme an den Übungen. "Modulvorleistung" bedeutet, dass Sie an der Klausur nicht teilnehmen können, wenn Sie diese Bedingung nicht erfüllen. Hausaufgaben können in Gruppen (bis zu 3-4 Teilnehmer) abgegeben werden (bitte nur eine Abgabe pro Gruppe!). Es können nur Personen zusammen die Hausaufgaben abgeben, die an der gleichen Übung teilnehmen (gleicher Termin).

Jedes Mitglied der Gruppe muss die abgegebene Lösung in der Übung erklären können, und auch Fragen zum Umfeld der Aufgabe beantworten können, bzw. sagen können, was bei leichten Modifikationen der Aufgabe/Lösung passieren würde. Damit diese Regelung greift, herrscht bei den Übungen Anwesenheitspflicht (man darf maximal 3 Mal fehlen, sonst liegt es im Ermessen der Übungsleiterin, die Punkte abzuerkennen). Falls jemand eine Lösung, die er/sie mit abgegeben hat, nicht erklären kann, kann er/sie schlimmstenfalls wegen Täuschungsversuch vom Modul ausgeschlossen werden (mindestens werden alle Punkte dieses Blattes aberkannt).

In der Klausur können Lehrbücher, Notizen, etc. verwendet werden. Die Klausur ist für den 13. Februar 2008, 10-12, geplant, die Nachholklausur für den 2. April.

Die Hausaufgaben werden immer donnerstags in der Vorlesung ausgegeben und ins Netz gestellt: [Seite der Übungen]. Die Abgabe ist dann am nächsten Donnerstag in der Vorlesung oder per EMail (bitte PDF) an herrmann(at)informatik.uni-halle.de (spätestens 14:15). Wenn Sie Hausaufgaben in einer Gruppe bearbeiten, geben Sie bitte nur ein Exemplar für die ganze Gruppe ab.

Die maximale Gruppengröße ist verhandelbar, aber zu ähnliche Lösungen verschiedener Gruppen haben ernste Konsequenzen (Täuschungsversuch: Punkteabzug für alle beteiligten Gruppen bis zu 100%).

Auch um einen Übungsschein zu erhalten, müssen Sie an der Klausur teilnehmen (und die Modulvorleistung erfüllen).

Für Korrekturen zu den Vorlesungsmaterialien, Vorschläge nützlicher Web-Links, aktive Teilnahme an den Diskussionen in der Vorlesung u.s.w. kann es eventuell Extrapunkte geben (nach Ermessen des Dozenten).

Für Hauptdiplomprüfungen gibt es individuelle mündliche Prüfungen, bitte erkundigen Sie sich beim Dozenten.


Punkte Datenbank


Die Punkte-Datenbank gibt Ihnen die Möglichkeit, die für Sie eingetragenen Punkte für Hausaufgaben und Klausur einzusehen, so daß Sie sich bei möglichen Unstimmigkeiten melden können. Außerdem werden einige statistische Angaben (Durchschnittspunktzahl etc.) angezeigt. Wir hoffen, die Bewertung so transparenter zu machen. Inzwischen haben auch das EVV sowie studip ähnliche Möglichkeiten, und wahrscheinlich auch eine bessere Benutzerschnittstelle. Für einen Datenbank-Kurs ist es aber gut, eine praktische Anwendung zu haben. Ich habe schon manches dadurch gelernt. Eine vereinfachte Version der Punkte-Datenbank wird auch in der Vorlesung als Beispiel verwendet. Ich entwickle die Punkte-Datenbank noch weiter (wenn ich Zeit habe), Verbesserungsvorschläge sind also willkommen.

Wir können die Sicherheit Ihrer Daten nicht garantieren (obwohl wir uns natürlich etwas Mühe geben). Falls Sie Ihre Daten nicht in der Punkte-Datenbank wünschen, melden Sie sich bitte. Ansonsten könnte sich jemand anders unter Ihrem Namen eintragen und dann Ihre Punkte einsehen. Sich nicht einzutragen und nicht zu melden wäre also für den Datenschutz sogar besonders gefährlich.


Literatur (Bücher)


Ich empfehle, sich eins der folgenden Bücher zu beschaffen und begleitend zur Vorlesung zu lesen. Die Reihenfolge ist mehr oder weniger zufällig und nicht als Wertung zu verstehen. Außerdem werde ich die in der Vorlesung verwendeten Folien zur Verfügung stellen.

[Weitere Datenbank-Lehrbücher]


Software (DBMS)


Kommerziell (Relational/Objektrelational): Halbkommerziell/Open Source/Frei: [Meine alte Software Link-Seite]


Informationen zur Installation von Oracle



Informationen zur Oracle Zertifizierung



Informationen zur IBM DB2 Zertifizierung



Literatur im WWW


Meine Sammlung von WWW-Referenzen:

Datenbank Tutorien im Internet:

Weitere Informationsquellen:


Stefan Brass (brass@acm.org), 26. Oktober 2007

Original URL: http://www.informatik.uni-halle.de/~brass/db07/   [HTML 3.2 Checked]   [Links Geprüft]