Autovermietung Flotter Flitzer

Informatik Johann Penon

Integrit├Ątsbedingungen

Wertebereichsintegrität

kunden

Feldname Beschreibung Datentyp Wertebereich Null
kunr Kundennummer SERIAL Fortlaufende Nummer mit 1000 beginnend nein
kuname Name CHAR 30 Stellen nein
kuvorname Vorname CHAR 20 Stellen nein
kustrasse Straße CHAR 30 Stellen nein
kuplz Postleitzahl CHAR 5 Stellen nein
kuort Ort CHAR 30 Stellen nein
kutelefon Telefon mit Vorwahl CHAR 30 Stellen ja
kugebdat Geburtsdatum DATE mindestens vor 18 Jahren nein
kudatfschein Datum des Führerscheinerwerbs DATE mindestens 18 Jahre nach dem Geburtsdatum nein

pkw

Feldname Beschreibung Datentyp Wertebereich Null
pkennzeichen Polizeiliches Kennzeichen CHAR 11 Stellen nein
moname Name des Modells CHAR 35 Stellen nein
perstzulassung Datum der Erstzulassung DATE nicht älter als 10 Jahre, nicht nach der Abmeldung ja
peabmeldung Datum der Abmeldung DATE älter als Erstzulassung ja
pschiebedach Schiebedach vorhanden CHAR 1 Stelle 'j' oder 'n' ja
pklima Klimaanlage vorhanden CHAR 1 Stelle 'j' oder 'n' ja

modell

Feldname Beschreibung Datentyp Wertebereich Null
moname Name des Modells CHAR 35 Stellen nein
hename Name des Herstellers CHAR 35 Stellen nein
moleistung Leistung in KW INTEGER 60 - 500 ja
mohubraum Hubraum in ccm INTEGER 500 - 5000 ja
molaenge Länge des PKW in cm INTEGER 300 - 1200 ja
mobreite Breite des PKW in cm INTEGER 200 - 400 ja

hersteller

Feldname Beschreibung Datentyp Wertebereich Null
hename Name des Herstellers CHAR 35 Stellen nein
hestrasse Straße CHAR 30 Stellen ja
heplz Postleitzahl CHAR 5 Stellen ja
heort Ort CHAR 30 Stellen ja
hetelefon Telefon mit Vorwahl CHAR 20 Stellen ja
hekontakt Kontaktperson beim Hersteller CHAR 20 Stellen ja

werkstatt

Feldname Beschreibung Datentyp Wertebereich Null
wename Name der Werkstatt CHAR 35 Stellen nein
westrasse Straße CHAR 30 Stellen ja
weplz Postleitzahl CHAR 5 Stellen ja
weort Ort CHAR 30 Stellen ja
wetelefon Telefon mit Vorwahl CHAR 20 Stellen ja
wekontakt Kontaktperson bei der Werkstatt CHAR 20 Stellen ja

ausleihe

Feldname Beschreibung Datentyp Wertebereich Null
annr Ausleihnummer SERIAL Fortlaufende Nummer mit 1 beginnend nein
pkennzeichen Polizeiliches Kennzeichen CHAR 11 Stellen nein
kunr Kundennummer INTEGER > 999 nein
auleiausdat Ausleihdatum DATE Datum des Ausleihtags, nicht vor dem aktuellen Datum nein
auanfangkm Kilometerstand beim Ausleihen INTEGER < 100000 nein
auleirueckdat Rückgabedatum DATE später als das Ausleih-datum, nicht vor dem aktuellen Datum ja
auendkm Kilometerstand bei der Rückgabe INTEGER < 100000 ja

reparatur

Feldname Beschreibung Datentyp Wertebereich Null
pkennzeichen Polizeiliches Kennzeichen CHAR 11 Stellen nein
wename Name der Werkstatt CHAR 35 Stellen nein
redatum Datum der Reparatur DATE nicht in der Zukunft ja
reart Art der Reparatur CHAR 35 Stellen ja
redauer Dauer der Reparatur in Tagen INTEGER < 100 ja

Der Datentyp SERIAL ist bei MySQL ein Alias für BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE.

Intra-relationale Integrität

Im Folgenden werden nur die Maßnahmen zur Sicherung eines eindeutigen Schlüssels dokumentiert:

Tabellenname Maßnahmen
kunden Fortlaufende Kundennummern mit 1000 beginnend durch das Datenbanksystem
hersteller durch einen eindeutigen Index für den Herstellernamen (Primary Key)
modelle durch einen eindeutigen Index für den Modellnamen (Primary Key)
pkw durch einen eindeutigen Index für das Kennzeichen (Primary Key)
werkstatt durch einen eindeutigen Index für den Werkstattnamen (Primary Key)
ausleihe Fortlaufende Nummerierung aller Ausleihvorgänge mit 1 beginnend durch das Datenbanksystem
reparatur durch einen eindeutigen Index für die Fremdschlüssel Kennzeichen, Werkstattname und Reparaturdatum

Die Integritätsbedingungen, die sich auf die Beziehung einzelner Felder innerhalb einer Relation beziehen, wurden aus Gründen der besseren Darstellungsmöglichkeiten bei der Wertebereichsintegrität dokumentiert.

Referentielle Integrität

Die hierfür notwendigen Maßnahmen betreffen im wesentlichen die Relationen Ausleihe und Reparatur.

Bei der Ausleihe muss sichergestellt werden, dass nur Ausleihen vorgenommen werden, bei denen alle Daten über Kunden und PKW vorliegen. Das System muss jede Ausleihe ablehnen, bei denen kein Verweis auf die Relation Kunden und PKW möglich ist. Da alle Ausleihdaten ein Jahr aktuell im System gehalten werden, dürfen Kunden und PKW nur einmal im Jahr, am Ende des Geschäftsjahres gelöscht werden.

Ähnliches gilt für die Relation Reparatur. Auch hier kann nur eine Reparatur eingegeben werden, die einen eindeutigen Verweis auf die Relation PKW und Werkstatt zulässt. Löschungen von Werkstätten sind nur am Ende des Geschäftsjahres erlaubt.

Weniger rigide sollten die Beziehungen zwischen PKW, Modell und Hersteller gehandhabt werden. So kann es in der Praxis vorkommen, dass bereits ein PKW ausgeliehen wird, von dem noch nicht alle genauen Daten vorliegen. Deshalb soll es möglich sein, in der Relation PKW Eintragungen vorzunehmen, obwohl die entsprechenden Verweise in den Relationen Hersteller und Modell fehlen.

zum Seitenanfang springen

zum Seitenanfang springen