Sie sind auf Seite 1von 7

Dokumentation SQL Datenbank

«HorizonTech Innovations»
Implementierung und Verwaltung
Version 1.00, 26.Februar 2024
Inhalt
1 Versionierung.......................................................................................................................... 2
1.1 Versionskontrolle................................................................................................................................ 2

2 Zusammenfassung.................................................................................................................. 3

3 Aufbau der Datenbank ............................................................................................................... 4


3.1 Konzeptionelles Datenmodell............................................................................................................... 4
3.2 Logisches Datenmodell ......................................................................................................................... 5

1 Versionierung
Diese Dokumentation unterliegt der Versionierung bzw. Versionskontrolle. Bei jeder grösseren
Änderung wird die Version angepasst. Ganzzahlige Werte entsprechen Haupt- bzw.
Ausgabeversionen. Kleine Änderungen (Rechtschreibekorrekturen, kleinere Layoutanpassungen
und dergleichen) werden nicht in der Versionskontrolle festgehalten.

1.1 Versionskontrolle
Versionskontrolle

Version Datum Verantwortlich Bemerkung

0.01 28.02.2024 Yannick Herzog Vorlage gestaltet

0.02 29.02.2024 Yannick Herzog Datenmodelle eingefügt

0.03 29.02.2024 Yannick Herzog Zusammenfassung & Verwaltung


eingefügt

1.00 29.03.2024 Yannick Herzog Dokumentation abgeschlossen


Tabelle 1 - Versionskontrolle
2 Zusammenfassung
Die Firma betreibt ein Autovermietungsgeschäft, das eine Vielzahl von Fahrzeugen vermietet. Um
ihre Geschäftsprozesse effizient zu verwalten, wird eine SQL-Datenbank verwendet. Die Datenbank
erfasst und verwaltet verschiedene Arten von Daten, darunter:

Kundendaten: Die Datenbank speichert Informationen über Kunden, einschliesslich


Vorname, Nachname, Geburtsdatum und Kontaktdaten. Jeder Kunde wird durch eine eindeutige
Kunden-ID identifiziert.

Autoangaben: Informationen zu den vermieteten Fahrzeugen werden erfasst, darunter das


Fahrzeugmodell, das Kennzeichen, die Farbe, das Datum der Erstzulassung und der Kilometerstand.
Jedes Fahrzeug wird durch eine eindeutige Fahrzeug-ID identifiziert.

Schadensberichte: Im Falle von Schäden an den Fahrzeugen können Schadensberichte in


der Datenbank erfasst werden. Diese Berichte enthalten Details zu den Schäden sowie
Informationen darüber, welcher Kunde das Fahrzeug zum Zeitpunkt des Schadens gemietet hatte.

Weitere Informationen: Die Datenbank kann auch zusätzliche Informationen verwalten,


wie z. B. Ausleihvorgänge, Rückgabedaten, Mietpreise, Verfügbarkeit von Fahrzeugen und
Statusinformationen zu den Fahrzeugen (z. B. ob ein Fahrzeug verfügbar, vermietet oder ausser
Betrieb ist).
3 Aufbau der Datenbank
3.1 Konzeptionelles Datenmodell
3.2 Logisches Datenmodell
d

Verwaltung
A.1 Wichtige Befehle zur Verwaltung:
Informations Ausgabe Befehl
Sitzanzahl Für Fahrzeug anzeigen SELECT F.Fahrzeug_Id, M.Modellname, M.Sitzplätze
FROM Fahrzeug F
JOIN Fahrzeugmodell M ON F.Fahrzeugmodell_Id = M.Fahrzeugmodell_Id;
Ausleihedatum und Kennzeichen SELECT Kunde.Vorname, Kunde.Nachname, Fahrzeug.Kennzeichen,
eines Kunden aufrufen. Ausleihe.Datum_von, Ausleihe.Datum_bis
FROM Ausleihe
JOIN Kunde ON Ausleihe.Kunde_Id = Kunde.Kunde_Id
JOIN Fahrzeug ON Ausleihe.Fahrzeug_Id = Fahrzeug.Fahrzeug_Id;
Alle Ausleihen auflisten mit den SELECT Fahrzeugmodell.Modellname, Farbe.Farbbezeichnung,
Namen der Kunden und ihren Ausleihe.Datum_von, Ausleihe.Datum_bis
geliehenen Fahrzeugen: FROM Ausleihe
JOIN Fahrzeug ON Ausleihe.Fahrzeug_Id = Fahrzeug.Fahrzeug_Id
JOIN Fahrzeugmodell ON Fahrzeug.Fahrzeugmodell_Id =
Fahrzeugmodell.Fahrzeugmodell_Id
JOIN Farbe ON Fahrzeug.Farbe_Id = Farbe.Farbe_Id;
Alle Ausleihen auflisten mit den SELECT Fahrzeug_Id, Modellname, Kennzeichen, Farbbezeichnung,
Fahrzeugmodellen und Farben Erstzulassung, Kilometerstand
der geliehenen Fahrzeuge: FROM Fahrzeug
JOIN Farbe ON Fahrzeug.Farbe_Id = Farbe.Farbe_Id
JOIN Fahrzeugmodell ON Fahrzeug.Fahrzeugmodell_Id =
Fahrzeugmodell.Fahrzeugmodell_Id
WHERE Status = 'verfügbar';
Alle Schäden auflisten mit den SELECT Fahrzeug.Kennzeichen, Schadenstelle.Schadenstelle,
Beschreibungen der SchadenArt.SchadenArt, Schaden.Datum
Schadensstellen und -arten: FROM Schaden
JOIN Fahrzeug ON Schaden.Fahrzeug_Id = Fahrzeug.Fahrzeug_Id
JOIN Schadenstelle ON Schaden.Schadenstelle_Id =
Schadenstelle.Schadenstelle_Id
JOIN SchadenArt ON Schaden.SchadenArt_Id = SchadenArt.SchadenArt_Id;
Alle Kunden auflisten mit ihren SELECT Kunde.Vorname, Kunde.Nachname, Adresse.Strasse,
Adressen und Kundenstatus: Adresse.Hausnummer, Adresse.PLZ, Adresse.Ort,
Kundenstatus.Kundenstatus
FROM Kunde
JOIN Adresse ON Kunde.Adressen_ID = Adresse.Adressen_ID
JOIN Kundenstatus ON Kunde.Kundenstatus_Id =
Kundenstatus.Kundenstatus_Id;
Alle Fahrzeuge auflisten mit SELECT Fahrzeug.Kennzeichen, Fahrzeugmodell.Modellname,
ihren Modellen, Farben und Farbe.Farbbezeichnung, Preisklasse.Preisklassennamen
aktuellen Preisklassen: FROM Fahrzeug
JOIN Fahrzeugmodell ON Fahrzeug.Fahrzeugmodell_Id =
Fahrzeugmodell.Fahrzeugmodell_Id
JOIN Farbe ON Fahrzeug.Farbe_Id = Farbe.Farbe_Id
JOIN Fahrzeugmodell_Preisklasse ON Fahrzeugmodell.Fahrzeugmodell_Id =
Fahrzeugmodell_Preisklasse.Fahrzeugmodell_Id
JOIN Preisklasse ON Fahrzeugmodell_Preisklasse.Preisklasse_Id =
Preisklasse.Preisklasse_Id;
Alle Ausleihen auflisten mit den SELECT Fahrzeug.Kennzeichen, Fahrzeugmodell.Modellname,
Vor- und Nachnamen der Farbe.Farbbezeichnung, Preisklasse.Preisklassennamen
Kunden, ihren Adressen und den FROM Fahrzeug
geliehenen Fahrzeugen: JOIN Fahrzeugmodell ON Fahrzeug.Fahrzeugmodell_Id =
Fahrzeugmodell.Fahrzeugmodell_Id
JOIN Farbe ON Fahrzeug.Farbe_Id = Farbe.Farbe_Id
JOIN Fahrzeugmodell_Preisklasse ON Fahrzeugmodell.Fahrzeugmodell_Id =
Fahrzeugmodell_Preisklasse.Fahrzeugmodell_Id
JOIN Preisklasse ON Fahrzeugmodell_Preisklasse.Preisklasse_Id =
Preisklasse.Preisklasse_Id;SELECT Kunde.Vorname, Kunde.Nachname,
Adresse.Strasse, Adresse.Hausnummer, Adresse.PLZ, Adresse.Ort,
Fahrzeug.Kennzeichen
FROM Ausleihe
JOIN Kunde ON Ausleihe.Kunde_Id = Kunde.Kunde_Id
JOIN Adresse ON Kunde.Adressen_ID = Adresse.Adressen_ID
JOIN Fahrzeug ON Ausleihe.Fahrzeug_Id = Fahrzeug.Fahrzeug_Id;
Alle Kunden auflisten, die SELECT Kunde.Vorname, Kunde.Nachname, Fahrzeug.Kennzeichen,
Fahrzeuge mit einem SchadenArt.SchadenArt
bestimmten Schaden gefahren FROM Kunde
haben, mit JOIN Ausleihe ON Kunde.Kunde_Id = Ausleihe.Kunde_Id
Schadensbeschreibung: JOIN Fahrzeug ON Ausleihe.Fahrzeug_Id = Fahrzeug.Fahrzeug_Id
JOIN Schaden ON Fahrzeug.Fahrzeug_Id = Schaden.Fahrzeug_Id
JOIN SchadenArt ON Schaden.SchadenArt_Id = SchadenArt.SchadenArt_Id;
Alle Ausleihen auflisten mit den SELECT Kunde.Vorname, Kunde.Nachname, Adresse.Strasse,
Namen der Kunden, ihren Adresse.Hausnummer, Adresse.PLZ, Adresse.Ort,
Adressen und geliehenen Fahrzeugmodell.Modellname, COUNT(*) AS Anzahl
Fahrzeugmodellen FROM Ausleihe
JOIN Kunde ON Ausleihe.Kunde_Id = Kunde.Kunde_Id
JOIN Adresse ON Kunde.Adressen_ID = Adresse.Adressen_ID
JOIN Fahrzeug ON Ausleihe.Fahrzeug_Id = Fahrzeug.Fahrzeug_Id
JOIN Fahrzeugmodell ON Fahrzeug.Fahrzeugmodell_Id =
Fahrzeugmodell.Fahrzeugmodell_Id
GROUP BY Kunde.Vorname, Kunde.Nachname, Adresse.Strasse,
Adresse.Hausnummer, Adresse.PLZ, Adresse.Ort,
Fahrzeugmodell.Modellname;

Das könnte Ihnen auch gefallen