CS计算机代考程序代写 Praktikum zur Vorlesung Datenbanken

Praktikum zur Vorlesung Datenbanken
für alle Studiengänge

Firas Sabbah, M.Sc.
Alfred Sliwa, M.Sc.

Ahmad Husein,
Yao Xing Chia

Wintersemester 2021/2022

Datum
Team (Account)
Passwort

Aktuelle Informationen, Ansprechpartner, Materialien und Uploads unter:
https://moodle.uni-due.de/course/view.php?id=30086

v1.0

1

https://moodle.uni-due.de/course/view.php?id=30086

Inhaltsverzeichnis
1 Block 1: Modellierung der Datenbank für das Mitfahrgelegen-

heitssystem „carSharer“ (10 Punkte) 3

A Spezifikation der Website 5
A.1 Beschreibung der Miniwelt . . . . . . . . . . . . . . . . . . . . . . 5

2

1 Block 1: Modellierung der Datenbank für
das Mitfahrgelegenheitssystem „carSharer“ (10
Punkte)

Abgabe bis 28.11.2021, 23:59 Uhr

Aufgabe 1: Datenbank-Modellierung (6 Punkte) In diesem Semester
soll „carSharer“ – eine Web-Applikation für die Verwaltung von Mitfahrgelegen-
heiten – entwickelt werden. Die Plattform ist sehr vielseitig und soll verschiedene
Funktionen unterstützen, u.A. folgende:

• Benutzer können Fahrten erstellen und löschen.

• Benutzer können Fahrten reservieren.

• Benutzer können Bewertungen für Fahrten erstellen.

In dieser Aufgabe soll zunächst die zugrundeliegende Datenbank durch ein
Entity-Relationship-Diagramm (ER-Diagramm) modelliert werden.

Im Anhang A.1 auf Seite 5 wird die Funktionsweise der zu erstellenden Web-
Applikation vorgestellt. Das zu modellierende ER-Diagramm soll nur auf der
Beschreibung der Miniwelt basieren. Es gilt zu beachten, dass nicht jede Anfor-
derung im ER-Diagramm umgesetzt werden kann.

• Verwendet für die Erstellung des ER-Diagramms das Programm Dia
(http://dia-installer.de/).

• Falls ihr während der Modellierung mehr Attribute als angegeben verwen-
den möchtet, so ist dies – an sinnvollen Stellen – natürlich erlaubt.

• Gibt Kardinalitäten in der Chen-Notation (1:1, 1:N, N:M) an.

Abgabe:

• ER-Diagramm als PDF-Datei

3

http://dia-installer.de/

Aufgabe 2: Datenbank-Erstellung (4 Punkte) Erzeugt für die in Aufga-
be 1 entworfene Datenbank benötigte CREATE TABLE- sowie INSERT INTO- State-
ments, welche die Datenbank-Tabellen in der DB2 anlegen und befüllen. Wendet
die Techniken aus der Datenbanken-Vorlesung an, um euer ER-Diagramm aus
Aufgabe 1 zunächst in ein Datenbankenschema zu überführen.

Die Abgabe soll enthalten:

• CREATE TABLE-Statements inkl. sinnvoller Integritätsbedingungen für
sämtliche Attribute. (2,5 Punkte)

• INSERT INTO-Statements (0,5 Punkte)

• Einen Trigger, der beim Einfügen einer Reservierung prüft, ob die Anzahl
maximaler Plätze erreicht wurde. Falls ja, soll der Status der Fahrt auf
„Geschlossen“ geändert werden. (1 Punkt)

Abgabe:

• CREATE TABLE-Statements, INSERT INTO-Statements und CREATE
Trigger-Statement als Textdatei (.txt)

4

Anhang

A Spezifikation der Website

A.1 Beschreibung der Miniwelt

• Benutzer haben eine ID, einen Namen sowie eine E-Mail Adresse. Zwei
Benutzer können nicht die selbe E-Mail Adresse haben.

• Benutzer können eine Fahrerlaubnis besitzen. Die Fahrerlaubnis ist ein-
deutig über den Benutzer identifizierbar und verfügt neben einer Nummer
einen Ablaufdatum.

• Benutzer können Fahrten erstellen, um Mitfahrgelegenheiten bereitzustel-
len. Jede Fahrt wird von genau einem Benutzer erstellt.

• Eine Fahrt besteht aus einer ID, einem Start- sowie Zielort, einem Fahrt-
datum und -uhrzeit, einer Anzahl maximaler Plätze, einer Beschreibung
(optional) sowie die Fahrtkosten.

• Die Anzahl maximaler Plätze einer Fahrt ist eine positive Ganzzahl und
kann höchstens den Wert 10 annehmen. Bei Kosten handelt es sich um
eine Fließkommazahl mit zwei Nachkommastellen.

• Benutzer können angebotene Fahrten reservieren. Bei jeder Reservierung
soll die Anzahl zu reservierenden Plätze festgehalten werden, wobei diese
Anzahl nicht größer als 2 sein darf.

• Transportmittel besitzen jeweils eine ID, einem Namen sowie ein Icon.
Folgende Transportmittel stehen zur Verfügung: „Auto“, „Bus“ und „Klein-
transporter“. Jede Fahrt ist eindeutig einem Transportmittel zugeordnet.

• Eine Fahrt besitzt ein Attribut „Status“, welches die Werte „Offen“ und
„Geschlossen“ annehmen kann. Wird eine Fahrt erstellt, so nimmt der „Sta-
tus“ standardmäßig den Wert „Offen“ an. „Geschlossen“ hingegen bedeutet,
dass für diese Fahrt keine freien Plätze mehr zur Verfügung stehen und
keine Reservierungen mehr getätigt werden können.

• Benutzer können zu einer Fahrt eine Bewertung schreiben. Eine Bewer-
tung besteht aus einer ID, einer Textnachricht, einem Rating und einem
Erstellungsdatum. Das Rating kann nur Ganzzahlen zwischen 1 und 5
annehmen.

5