Sie sind auf Seite 1von 6

Datenbank anlegen

Als erstes legen wir eine weitere Datenbank an. Dazu klicken wir nach dem Login-Screen
oben im Menü auf Datenbanken und geben dort einen neuen Datenbanknamen ein und
wählen als Kollation utf8_unicode_ci aus.

Tabelle erstellen
Auf der linken Seite in phpMyAdmin seht ihr eure verschiedenen Datenbanken. Neben

ein paar vorab angelegten Datenbanken sollte dort auch eure neue Datenbank

erscheinen. Eine neue Tabelle könnt ihr nun anlegen, indem ihr den Bereich Erzeuge

Tabelle nutzt.
tbl_Land

tbl_umfeld
tbl_Verletzungen

tbl_info

ID:
Für unsere id haben wir als Typ int (kurz für integer) ausgewählt. Als Attribut haben wir
für diese Spalte unsigned gewählt, das heißt, in diesem Feld können nur positive Werte
abgespeichert werden. Unter Index haben wir Primary ausgewählt. Primary ist der
Primärschlüssel der Tabelle, das bedeutet alle späteren Zeilen in unserer User-Tabelle
müssen einen Wert für id gesetzt haben und dieser Wert muss eindeutig sein. Zuletzt
haben wir noch den Hacken bei id bei A_I gesetzt. A_I steht für auto increment und
sofern wir dieses setzen, wird MySQL zukünftig automatisch fortlaufende Nummern als
id vergeben. Wir müssen uns also um die korrekte und eindeutige Vergabe von ids nicht
kümmern.

Für die Spalten Umfeld, Unfallursache, Köperlich_schaeden, Land,Stadt und Verletzungen


haben wir den Typ varchar gewählt. varchar erlaubt Texteingaben bis maximal 65.535
Zeichen. In unserem Fall haben wir die Länge der Spalten bis 255 begrenzt. Für Land
und Stadt haben wir als Index UNIQUE gewählt. Dies gewährleistet, dass keine doppelte
Einträge in dieser Spalte vorhanden sein können.

Für Köperlich_schaeden und Unfallursache erlauben wir null-Werte und der Standardwert
dieser Spalte ist null.
DB-Dokumentation
Verwendete Software:
· DB-System: MySQL/MariaDB

· Dokumentations-Software: MS Word (PHPMyAdmin als Website am Webserver)

Datenbank
Verwendete Tabellen:

· tbl_Land: Speichert sämtliche relevanten Information zu Länder

· tbl_umfeld: Speichert Informationen zum Umfeld

· tbl_Verletzungen: Speichert die zu einem Verletzung

tbl_info: Speichert die Allgemein inf über alle Tabellen

Tabellen
tbl_Land

· IDLand: INT(10) unsigned, NOT NULL, auto-increment; Primärschlüssel

· Land: VARCHAR(32)unsigned, NOT NULL

· Stadt: VARCHAR(32)unsigned, NOT NULL

tbl_umfeld

· IDumfeld: INT(10) unsigned, NOT NULL, auto-increment; Primärschlüssel

· Umfeld: VARCHAR(32)unsigned, NOT NULL

tbl_Verletzungen

· IDVerletzungen: INT(10) unsigned, NOT NULL, auto-increment; Primärschlüssel

· Verletzungen: VARCHAR(32)unsigned, NOT NULL

tbl_info

· IDinfo: INT(10) unsigned, NOT NULL, auto-increment; Primärschlüssel


Datum: date

· FIDLand: INT(10) unsigned, NOT NULL; Fremdschlüssel auf tbl_Info

· FIDUmfeld: INT(10) unsigned, NOT NULL; Fremdschlüssel auf tbl_Info

· FIDSchaden: INT(10) unsigned, NOT NULL; Fremdschlüssel auf tbl_Info

· Köperlich_schaeden: VARCHAR(32), NULL

Unfallursache: VARCHAR(32), NULL

Constraints
Generell gilt: Für sämtliche verwendeten Constraints in dieser Datenbank wird
festgelegt, dass bei einem CASCADE ein CASCADE zum Einsatz gebracht wird.

· FIDLand -> tbl_Info, FIDUmfeld-> tbl_Info und FIDSchaden-> tbl_Info: 1:n-Beziehung,


da Interpret mehrere info veröffentlichen kann:

o ON DELETE CASCADE : sollte der Versuch gestartet werden, einen


Interpreten zu löschen, von dem bereits mind. Ein info gespeichert
wurde, so soll dieser Löschversuch nicht verhindert werden.
Begründung: würde der Interpret gelöscht werden, so gäbe es aus
Sicht des infos keinen Bezug zum Interpreten mehr, würde man das
Löschen nicht verhindern. Da angenommen wird, dass es sich um eine
öffentlich zugängliche Datenbank handelt, wo sämtliche info
gespeichert sind, macht das Löschen eines Interpreten auch keinen
Sinn, da seine Alben ja dennoch existieren.

o ON UPDATE CASCADE: siehe einführende Begründung

ER-Diagramm
(Screenshot, Foto, Illustration aus MySQL Workbench oä., …)

Das könnte Ihnen auch gefallen