Institute for Informatics
Georg-August-Universität Göttingen

Databases and Information Systems Group

dbis
Uni Göttingen

Datenbankpraktikum SQL
Frühjahr 2005

Das Datenbankpraktikum findet als Blockveranstaltung vom 7.3.2005-8.4.2005 statt. Damit können Studierende, die im WS die Vorlesung "Datenbanken" hören, direkt im Anschluss daran am Praktikum teilnehmen.

Das Praktikum wird mit 9 ECTS angerechnet; es kann wahlweise als "Informatik-Praktikum" im Pflichtblock Informatik, oder im Wahlpflichtbereich angerechnet werden.

Dipl.-Inf. Erik Behrends, behrends@informatik.uni-goettingen.de

Tutoren:
Manuel Vogelsänger
Constantin von Samson

Voraussetzung:
  • Informatiker: Bestehen der Klausur "Datenbanken" sowie des "Allgemeinen Programmierpraktikums".
  • Nebenfach-Studierende: Äquivalente Grundkenntnisse in Datenbanken, Grundkenntnisse in Programmierung.

Aufbau des SQL-Praktikums:

In dem Praktikum wird SQL in aufeinander aufbauenden Unterrichtseinheiten vermittelt und angewendet. Das Praktikum wird gruppenweise von jeweils 4 Studenten durchgeführt. Das Praktikum besteht aus 8 "Versuchen". Zu jedem Versuch werden in einer Vorlesungseinheit die entsprechenden SQL-Konzepte vorgestellt und ein Aufgabenblatt ausgegeben. Die Lösungen werden dann gemeinsam mit einem Tutor besprochen. Nach jeder Vorlesungseinheit stehen Betreuer im Pool zur Verfügung. Weitere Termine kann jede Gruppe separat mit ihrem Tutor vereinbaren.
Hinweise zu den Formalitäten des Praktikums finden Sie hier.

Themen: ER-Modellierung, Schemaerzeugung, Anfragen, Views, Updates, Referentielle Integrität, Komplexe Attribute und Nested Tables, Trigger, PL/SQL, Objekt-relationale Erweiterungen, Indexing, Zugriffskontrolle, Embedded SQL, JDBC/SQLJ (Einbindung in Java), SQLX/XML.

Es wird die Geo-Datenbasis "Mondial" unter Oracle9i eingesetzt.

SQL-Anfragen an Mondial unter Oracle können hier gestellt werden.

Das Oracle9i-Web-Interface iSQL*Plus finden Sie hier.

Zeitplan

Die Vorlesungseinheiten finden in Raum MN 67, Institut für Informatik, statt.

Teil 1: Basics
  • 07.03., 10:00 Uhr c.t., MN 67 IfI: Vorbesprechung/Anmeldung.
    Dieser Termin ist für alle Teilnehmer am Praktikum verbindlich (u.a. Account-Vergabe, Gruppeneinteilung).
    0. Versuch: Einführung
    Einführung in das UNIX/Oracle-System, Vorstellung der MONDIAL-Datenbasis und ihres ER-Modells.
  • 1. Versuch: Einfache Anfragen
    07.03., 14:00 Uhr c.t.- ca.17 Uhr: Umsetzung in das relationale Modell, ORACLE Data Dictionary, SQL-Anfragebefehle.
    Aufgaben: Anfragen an die MONDIAL-Datenbasis.
    Besprechung bis 15.03.
  • 07.03., 17:00 Uhr - 19:00 Uhr: Betreutes Tutorium im CIP-Pool der Informatik
  • 08.03., 10:00 Uhr - 12:00 Uhr: Betreutes Tutorium im CIP-Pool der Informatik
  • 08.03., 14:00 Uhr - 16:00 Uhr: Betreutes Tutorium im CIP-Pool der Informatik
  • 09.03., 10:00 Uhr - 12:00 Uhr: Betreutes Tutorium im CIP-Pool der Informatik
  • 2. Versuch: Erstellen und Unterhalten einer Datenbank
    09.03., 14:00 Uhr c.t.: SQL-Befehle zur Schemaerzeugung, Views, Einfügen, Löschen und Verändern von Daten, DATE-Datentyp, Objekttypen: komplexe Attributtypen und Geschachtelte Tabellen.
    Aufgaben: Ergänzungen zum Datenbankschema, Datentypen.
    Besprechung bis 18.03.
  • 09.03., 16:00 Uhr - 18:00 Uhr: Betreutes Tutorium im CIP-Pool der Informatik
  • 10.03., 10:00 Uhr - 12:00 Uhr: Betreutes Tutorium im CIP-Pool der Informatik
Teil 2: Dies + Das
  • 3. Versuch: Updates, Schemaänderungen, Referentielle Integrität
    10.03., 14:00 Uhr c.t.: Schemaänderungen, Referentielle Integrität, View Updates.
    Besprechung bis 22.03.
  • 10.03., 16:00 Uhr - 18:00 Uhr: Betreutes Tutorium im CIP-Pool der Informatik
  • 11.03., 10:00 Uhr - 12:00 Uhr: Betreutes Tutorium im CIP-Pool der Informatik
  • 4. Versuch: Mehrbenutzerbetrieb
    11.03., 14:00 Uhr c.t.: Zugriffskontrolle, Rechtevergabe, Optimierung, Indizes.
    Besprechung bis 24.03.
  • 11.03., 16:00 Uhr - 18:00 Uhr: Betreutes Tutorium im CIP-Pool der Informatik
  • 14.3.-18.3.: Termine für Testate bitte individuell mit den Tutoren absprechen (vorzugsweise vormittags oder am späteren Nachmittag außerhalb der "Hauptfragezeiten").
  • 14.3.-18.3., 10:00 Uhr - 12:00 Uhr: Testate im CIP-Pool der Informatik
  • 14.3.-16.3., 14:00 Uhr - 16:00 Uhr: Betreute Tutorien im CIP-Pool der Informatik
  • MUNOPAG: Melden Sie sich im MUNOPAG zur "Prüfung" an (An- und Abmeldefrist bis 20.3. 24:00 Uhr). Das Praktikum ist allgemein unbenotet. Wer im Master-Studium eine Note für das Praktikum benötigt, soll sich bitte mit Wolfgang May in Verbindung setzen.
Teil 3: Prozedurale Konzepte, Objektrelationale Features, Anbindung an Programmiersprachen
  • 5. Versuch: PL/SQL, Prozeduren, Funktionen, Trigger.
    17.03., 14:00 Uhr c.t.: PL/SQL, Prozeduren, Funktionen, Trigger.
    Besprechung bis 01.04.
  • 17.03., 16:00 Uhr - 18:00 Uhr: Betreutes Tutorium im CIP-Pool der Informatik
  • 6. Versuch: Objektrelationale Features in Oracle9i.
    18.03., 14:00 Uhr c.t.: Objektorientierte Features: Objekte, Objektmethoden: Funktionen und Prozeduren, Objekt-Views.
    Besprechung bis 01.04.
  • 18.03., 16:00 Uhr - 18:00 Uhr: Betreutes Tutorium im CIP-Pool der Informatik
  • 21.3.-24.3. und 29.3.-1.4. Betreute Tutorien im CIP-Pool der Informatik nach Absprache.
  • Achtung: Die folgenden beiden Termine beginnen schon um 10:00 Uhr!
    Raumänderung: Die Vorlesungen finden in Raum MN68 statt!
  • 7. Versuch: Einbettung in Java
    04.04., 10:00 Uhr c.t.: JDBC, SQLJ: Datenbankzugriff mit Java.
    Besprechung bis 08.04.
  • 04.04., 14:00 Uhr - 16:00 Uhr: Betreutes Tutorium im CIP-Pool der Informatik
  • 8. Versuch: SQL und XML (freiwillig)
    05.04., 10:00 Uhr c.t.: SQLX: SQL und XML-Datentypen
    (in dem Kurs wird eine kurze Einführung in XML gegeben, und gezeigt, wie XML-Daten mit relationalen Daten kombiniert und innerhalb von SQL verarbeitet werden können).
    Besprechung bis 08.04.
  • 05.04., 14:00 Uhr - 16:00 Uhr: Betreutes Tutorium im CIP-Pool der Informatik
  • Evaluierungs-Fragebogen
  • Praktikumsende: 08.04.2005

Dokumente

Links

Software

  • Das Datenbanksystem Oracle und zugehörige Client-Software kann auf verschiedenen Betriebssystemen installiert werden.
  • Oracle Instant Client: SQL*Plus und JDBC.
  • TOra (Toolkit for Oracle) ist eine freie Oracle-Entwicklungsumgebung (benötigt den Oracle Instant Client).

Literatur

  • Klassiker zu SQL-2:
    • Lehrbuch zu SQL (In Deutsch):
      Matthiessen, Günter; Unterstein, Michael: Relationale Datenbanken und SQL: Konzepte der Entwicklung und Anwendung. Addison-Wesley, 2003.
    • Das Buch zum SQL-92 Standard:
      H. Darwen and C. Date: SQL - Der Standard. Addison-Wesley, 1998.
  • Zu Oracle:
    • U. Hohenstein, V. Pleßer: Oracle 9i: Effiziente Anwendungsentwicklung mit objektrelationalen Konzepten. dpunkt-Verlag, 2002.
  • JDBC:
    • S. White, M. Fisher, R. Cattell, G. Hamilton, M. Hapner: JDBC API Tutorial and Reference: Universal Data Access for the Java 2 Platform. Addison-Wesley, 1999.