Inhaltsverzeichnis

7. Ländertabelle erstellen

Wir haben immer noch unsere Kundentabelle:

Normalisierung

Jetzt wird es Zeit, zumindest ein bisschen zu normalisieren.

Konkret wollen wir das Land in eine separate Tabelle auslagern.

Diesmal wollen wir aber anders vorgehen. Wir erstellen nicht eine leere Tabelle "tbllaender" und befüllen diese von Hand, sondern wollen eine CSV-Datei importieren.

Import einer CSV-Datei

Aufgabe 1

Laden Sie die folgende CSV-Datei herunter:
german-iso-3166.csv

Versuchen Sie selbständig, diese Länderliste in eine neu zu erstellende Ländertabelle mit dem Namen "tbllaender" zu kriegen.

Denken Sie dran, einen Primärschlüssel mit Autoincrement zu erstellen.

Die Tabelle soll folgende Struktur aufweisen:

Das Resultat nach dem Import sollte etwa so aussehen:

Achte auch darauf, dass Umlaute korrekt importiert werden (UTF-8 sinnvollerweise).

Anpassen der Tabelle "tblkunden"

Nun, was machen wir mit der Kundentabelle?

Wir könnten versucht sein, den Datentyp der Spalte tLand zu ändern auf TINYINT (und den Attributnamen umbenennen).

Aufgabe 2

Was ist an dieser Version nicht gut?

Lösung

Aufgabe 3

Also, was könnte die bessere Variante sein?

Lösung

Aufgabe 4

Also, machen Sie das gleich.

Lösung

Jetzt sieht unsere Kundentabelle wie folgt aus:

Attribut "tLandID" korrekt updaten

Jetzt wird es tricky😅😢😎:

Aufgabe 5

Ändern Sie bei sämtlichen Kunden das Attribut "tLandID" auf den korrekten Wert.

Verwenden Sie dazu die neu erstellte Tabelle "tbllaender".

Tipp: mit einem JOIN geht das.

Lösung

Fast gut:

Aufgabe 6

Quizfrage: warum hat das bei Stefan Derrick nicht geklappt? Warum steckt dort immer noch 0 drin?

Lösung

Aufgabe 7

Also, passen Sie diese einzelne Zeile von Hand an.

Lösung

Sodele, jetzt müsste unsere Tabelle wie folgt aussehen:

Prima, wir sind schon fast zufrieden😅.

Aufgabe 8

Nun können Sie das Attribut "tLand" löschen. Das brauchen wir nicht mehr.

Lösung