Übungen

Aufgabe 1

Stelle dir vor, du willst die folgenden Dinge in einer Datenbanktabelle speichern:

  1. die in Deutschland zugelassenen Autos
  2. alle zur Zeit erhältlichen Bücher
  3. alle Schülerinnen und Schüler in deiner Schule
  4. die Lehrerinnen und Lehrer deiner Schule

Welche Primärschlüssel könnte man dann jeweils wählen? Wo sollte man einen "künstlichen" Primärschlüssel einfügen?

Aufgabe 2

Für die Verwaltung der Noten einer Klasse hat sich ein Lehrer eine Datenbank erstellt:

Zwei Tabellen zur Klassenverwaltung. Eine mit Schülerdaten und eine mit Noten. Bei der Notentabelle wird der Schülername als Attribut angezeigt. Ansonsten noch die Attribute Datu, Typ (Klassenarbeit, HÜ, etc.) und Note.

  1. Warum wäre das Attribut "Name" ein möglicher Primärschlüssel für die Schüler-Tabelle?
    Warum kann das aber später zu Problemen führen?
  2. Was ist im Moment ein möglicher Primärschlüssel der Noten-Tabelle?
  3. Was ist der Fremdschlüssel in der Noten-Tabelle?
  4. Ändere beide Tabellen so ab, dass die Probleme aus Aufgabenteil 1 vermieden werden können.

Aufgabe 3

Ein Benutzer kann eine Reihe von persönlichen Blogeinträgen verfassen. Diese tragen neben dem Blogtext auch noch das Datum, wann der Eintrag erstellt wurde.

Wie könnte eine solche Blog-Tabelle aussehen?
Welche Schlüssel sind einzusetzen?

Download der Datenbank gbuch3 Die Lösung findest du selbst, wenn du gbuch3.zip in eine neue Datenbank importierst.

SQL Fenster öffnen Ansonsten kannst du es auch hier (mit Einschränkungen) direkt ausprobieren.

 

Aufgabe 4

Formuliere SQL-Befehle für die folgenden Anfragen. Dabei reichen zunächst einmal die Tabellen benutzer und bild aus:

Schema der benutzer und bild Tabelle.

  1. Welcher Benutzer hat ein Bild namens „bus.jpg“ abgespeichert?
  2. Welche Benutzerbilder hat Herr Dr. Klöbner schon gespeichert?
  3. Sortiere alle Landschaftsbilder nach dem Ort des Benutzers, der sie angelegt hat. Es reicht, Ort und Bildname auszugeben.

Beachte jeweils, dass du keine Bedingungen formulierst, die Werte in den künstlichen Schlüsselattributen abfragen. In der Regel sollte sich der Programmierer ja nicht auf diese (internen) Werte verlassen. Bedingungen der Form bild.PNR=1001 sind also nicht zulässig.

Aufgabe 5

Die folgenden Abfragen beziehen sich jetzt auf alle drei Tabellen (benutzer, bild, blog) der gbuch3-Datenbank, deren Schema du hier siehst:

Schema der gbuch3-Datenbank mit den Tabellen benutzer, bild und blog.

  1. Gib die (wenigen) Blogeinträge zusammen mit dem Benutzernamen aus. Sortiere nach dem Datum absteigend.
  2. Welche Blogeinträge hat Herr Dr. Klöbner erstellt?
  3. Mit den Blogeinträgen soll jeweils auch das Benutzerbild des Benutzers ausgegeben werden.
    Berücksichtige nur die Blogeinträge nach dem 1.4.2013.
X

Fehler melden

X

Suche