Aufgabe Vorschlag B2 - Aufgabe 7 · Abitur Hessen Informatik LK 2022

Thema: SQL-Abfragen und -Anweisungen · Aus der Prüfung LK (2022)

Aufgabenstellung

Endgeräte-Verleih

Eine Schülergruppe hat ein computergesteuertes Regalsystem mit Behältern entwickelt, das die Ausleihe von Endgeräten an Schülerinnen und Schüler kontaktlos, sicher und kurzfristig möglich machen soll.

Der Verschluss jedes Behälters im Regal kann elektronisch gesteuert geöffnet werden, so dass man dem Behälter Objekte entnehmen oder sie zurücklegen kann. Ein Computer kontrolliert den Zugriff und gibt einen oder mehrere Behälter frei, wenn die Schülerin oder der Schüler innerhalb des gebuchten Zeitraums den korrekten Einmal-Code eingibt.

Die Schülerinnen und Schüler nutzen zur Buchung eine App, die wie der Computer des Regalsystems Zugriff auf eine Relationale Datenbank hat. In der Datenbank sollen die folgenden Informationen berücksichtigt werden:

Jeder Behälter hat eine eindeutige Behälternummer, eine bestimmte Lage im Regal und kann mehrere Objekte enthalten, die am Ende der Nutzung alle gemeinsam zurückgegeben werden müssen. Die Objekte sind jeweils einem Behälter fest zugeordnet.

Jedes Objekt, das sich in einem Behälter befinden kann, hat eine ID, eine Beschreibung und einen Status (ok, defekt, unvollständig).

Jeder Schüler hat eine eindeutige Schülernummer, einen Vor- und einen Nachnamen, eine Klassenbezeichnung sowie ein Passwort.

Jeder Schüler darf die Buchung von einem oder mehreren Behältern für einen beliebigen Zeitraum, von dem das Anfangsdatum und das Enddatum festgehalten werden, veranlassen, wenn in diesem Zeitraum bisher keine anderen Buchungen für diese Behälter vorliegen. Die Buchungen sind durch eine eindeutige Buchungsnummer unterscheidbar.

Zu jeder Buchung zeigt die App einen nach festem Schema zufällig generierten Code an, der am Regal in der Schule eingegeben werden muss, um den oder die Behälter öffnen zu können.

Es wird außerdem im Attribut Öffnung dokumentiert, wann die Öffnung erfolgt ist. Gleichzeitig gebuchte Behälter werden auch zur gleichen Zeit geöffnet.

Material 1

Ausschnitt der Relation Behälterbuchung

Behälternummer

Anfangsdatum

Enddatum

ObjektID

Code

1

2022-03-14

2022-03-19

65

Lm432L

2

2022-03-20

2022-03-25

134

Xr435K

3

2022-03-14

2022-03-19

132

Az420H

3

2022-03-22

2022-03-25

132

Ur231J

3

2022-03-14

2022-03-19

298

Az420H

3

2022-03-22

2022-03-25

298

Ur231J

Material 2

Ausschnitt eines ER-Diagramms

Da es immer lange dauert, bis der technische Support defekt gemeldete Geräte überprüft und ggf. repariert, soll die Überprüfung von Geräten durch Paten aus der Schülerschaft erfolgen. Dafür soll eine neue Relation durch folgenden Befehl erzeugt werden. Ein Gerät soll maximal einem Paten zugewiesen werden können.

CREATE TABLE ist_Pate_für (

ID INT,

Schülernummer INT,

PRIMARY KEY (ID, Schülernummer),

FOREIGN KEY (ID) REFERENCES Objekt(ID),

FOREIGN KEY (Schülernummer) REFERENCES Schüler (Schülernummer)

)

Analysieren Sie den gegebenen Befehl und prüfen Sie, ob die zugrundeliegende Modellierung den Anforderungen gerecht wird.

Aufgabenstellung: Aufgabe Vorschlag B2 - Aufgabe 7 · Abitur Hessen Informatik LK 2022

Lösung

Nach den offiziellen Korrekturhinweisen

Analysieren Sie den gegebenen Befehl und prüfen Sie, ob die zugrundeliegende Modellierung den Anforderungen gerecht wird.

Lösung: Analyse: Durch den CREATE-Befehl wird eine neue Relation namens *ist_Pate_für* erzeugt mit den Attributen *ID* und *Schülernummer* (jeweils vom Datentyp INT). Beide Attribute bilden zusammen den zusammengesetzten Primärschlüssel und sind Fremdschlüssel auf *Objekt(ID)* bzw. *Schüler(Schülernummer)*. Prüfung: Die Modellierung entspricht einer n:m-Beziehung. Dadurch kann ein Schüler Pate mehrerer Geräte sein, aber auch ein Gerät mehrere Paten haben. Laut Anforderung darf ein Gerät jedoch maximal einem Paten zugewiesen werden (1:n-Beziehung). Daher wird die Modellierung den Anforderungen nicht gerecht (für die Einhaltung müsste ID alleine Primärschlüssel der Relation sein bzw. als Fremdschlüssel in Objekt integriert werden).

Die ausführliche Erklärung Schritt für Schritt (mit KI) gibt es mit Premium. Premium

Löse sie direkt hier: automatische Korrektur, Hinweise und Lösung Schritt für Schritt.

‹ Aufgabe Vorschlag B2 - Aufgabe 6 · LK 2022 · Aufgabe Vorschlag B1 - Aufgabe 4 · GK 2021 ›

Mehr Aufgaben zu SQL-Abfragen und -Anweisungen