Wiki: Mathe und Info

Unterrichtsmaterialien für Mathematik und Informatik

Benutzer-Werkzeuge

Webseiten-Werkzeuge


info:sek-ii:q2:sql:uebungklausur

Übungen Klausur

Aufgabe 1:

Gib in den folgenden Relationen sinnvolle Primärschlüssel an. Begründe deine Wahl. Es kann auch zusammengesetzte Primärschlüssel geben.

  • LaptopReparaturListe(laptopModell, laptopHersteller, laptopSerienNummer, fehlerMeldung, reparaturFertig, reparaturPreis)
  • Patient(patientID, patientName, patientAdresse)
  • Arztbesuch(datum, patientID, diagnose)
Aufgabe 2:

Eine Fluggesellschaft möchte eine neue Datenbank programmieren. Diese soll die notwendigen Wartungen und daraus resultierende Mängel und Reparaturen ihrer Flugzeugflotte modellieren. Erstelle aus den unten stehenden Anforderungen ein passendes ER-Diagramm.

  • Über ein Flugzeug werden Informationen über den Hersteller, das Modell, die Anzahl der Fahrgestelle und der Triebwerke und das Baujahr gesammelt.
  • Für eine Wartung wird gespeichert, an welchem Flugzeug sie durchgeführt wurde, welches Service-Team verantwortlich war, wann die Wartung durchgeführt wurde, und es werden Mängel erfasst.
  • Jeder Mangel wird mit einem Text beschrieben und muss in einer eigenen Reparatur behoben werden.
  • Für eine Reparatur wird ebenfalls das Service-Team und das Datum gespeichert, das die Reparatur durchgeführt hat.
  • Jedes Service-Team hat einen Namen und besteht aus einem Hauptverantwortlichen Arbeiter und mehreren "normalen" Arbeitern.
  • Jeder Arbeiter hat einen Namen, einen Jobtitel wie z.B. "Ingenieur" oder "Mechaniker", ein Gehalt und ein Einstellungsdatum.
Aufgabe 3

a)

  • Ergänze passende Kardinalitäten im ER-Diagramm aus Aufgabe 2.
  • Erstelle für das ER-Diagramm aus Aufgabe 2 ein zugehöriges Relationenmodell.
  • Kennzeichne im Relationemodell zu Aufgabe 2 Primär- und Fremdschlüssel wie im Unterricht geübt.

b)

  • Die Schule bietet für Schüler die Möglichkeit der Ausleihe von Geräten für schulische Zwecke. Dazu muss der Schüler ein Antragsformular auf der Homepage der Schule ausfüllen. Die Daten werden auf dem zugehörigen Webserver in einer Datenbank gespeichert. Das folgende ER-Diagramm modelliert diesen Realitätsauschnitt. Interpretiere das ER-Diagramm: uebung-klausur-erd.jpeg
  • Erweitere das ER-Modell so, dass für alle Geräteklassen die zugehörigen Geräte mit den Angaben über Hersteller, Inventarnummer und Bezeichnung erfasst werden.
Aufgabe 4

Dieser Aufgabe liegt das folgende Relationenmodell zu Grunde:

  • Produkte(ProduktID, Name, Lagerbestand, AnzahlBestellungen, EinzelPreis, HerstellerName) uebung-klausur-tabelle.jpeg

Formuliere die folgenden Abfragen in SQL:

  1. Es soll eine Liste mit allen Herstellern erstellt werden.
  2. Es soll eine Liste mit Produkten ermittelt werden, von denen nicht genügend im Lager vorhanden sind.
  3. Es soll ermittelt werden, wie viele "Senseo Kaffemaschinen" vom Hersteller "Phillips" vorhanden sind.
  4. Es soll der Gesamtwert des Lagerbestands ermittelt werden.
Aufgabe 5

Erläutere die folgenden SQL-Abfragen. Gehe dabei auf jeden einzelnen Sprachbefehl ein (SELECT, FROM, WHERE, COUNT, AS, …)

SELECT name, straße, hausnummer
FROM kunden
WHERE ort = 'Nidda'
ORDER BY straße, hausnummer 
SELECT produktName, einzelPreis * lagerBestand AS geheimSpalte
FROM lager;
SELECT COUNT(*)
FROM städte
WHERE land = 'Deutschland'
SELECT name, land
FROM städte
WHERE name LIKE '%heim%'
SELECT land, COUNT(*)
FROM städte
WHERE name LIKE '%heim%'
GROUP BY land
SELECT land, SUM(einwohner)
FROM städte
GROUP BY land;
Aufgabe 6: DML

Gegeben ist die folgende Datenbankstruktur:

  • Kunde(ID, Name, Adresse)
  • Telefonvertrag(ID, #KundeID, Freiminuten, Grundgebühr, PreisProMinute, PreisProSMS)
  • Gespräche(#KundenID, Datum, Zeit, Minuten)
  • SMS(#KundenID, Datum, Zeit, Inhalt)

a) Erläutere, warum in der Relation Gespräche mehrere Attribute als Primärschlüssel markiert sind.

b) Füge mit je einer DML-Abfrage dich selbst als neuen Kunden hinzu, schließe einen Vertrag (ohne Freiminuten mit 19,90€ Grundgebühr, 19ct/Minute und SMS) ab und trage mehrere Gespräche und SMS ein.

c) Du hast einen Fehler auf der Website des Anbieters gefunden. Zur Belohnung bekommst du 10 Freiminuten und deine Grundgebühr wird auf 10,99€ verringert. Erstelle dafür eine DML-Abfrage.

d) Der Monat ist beendet. Berechne mit einer einzigen DQL-Abfrage, wie viel du am Monatsende Bezahlen musst.

e) Du kündigst deinen Vertrag. Lösche die dich betreffenden Datensätze aus allen Tabellen. Erstelle dafür mehrere DML-Abfragen.

Gemischte Übungen SQL-Tutorial
Ihr findet weitere gemischte Aufgaben hier im SQL-Tutorial.
Normalisieren von Datenbanken

Bringe die Datenbank in die 3. Normalform:

info/sek-ii/q2/sql/uebungklausur.txt · Zuletzt geändert: 2024-03-10 21:22 von yannik.wehr