Hallo Selfgemeinde!
Ich hätte gerne mal euren Rat bezüglich eines möglichst optimalem Tabellenlayouts.
Es geht um eine Tabelle, die URLs (Seitennamen/ -titel) von Seiten meiner Website enthalten soll, zum Look-Up bei jedem Request und die eine entsprechende Resource-ID zurückliefern soll.
Ferner soll zusätzlich noch der Fall Berücksichtigung finden, dass sich der Titel/ die URL einer Seite ändert (Status 301), bzw. eine Seite nicht weiter vorhanden ist (Status 410).
Dazu habe ich nach meiner ersten Idee und Überlegung folgende Tabelle erstellt:
Feld Typ Null Standard Kommentare
---------------------------------------------------------------------------------------------
url_id mediumint(8) Nein auto_increment
res_url varchar(255) Nein unique
id mediumint(8) Nein Resource-ID
status enum('301', '307', '410') Ja NULL mögliche Statuscodes
status_add mediumint(8) Ja NULL bei 301 bspw. aktuelle url_id
Wichtig ist u.a. auch die Unique Eigenschaft der Spalte res_url, da jede URL/ jeder Seitenname ja nur einmal existieren darf.
Irgendwie habe ich das "Gefühl", dass meine Tabellenstruktur eher "suboptimal" ist, komme aber auch nach intensivem Studium diverser Artikel (darunter u.a. die beiden Fachartikel von Rouven und Vinzenz zu JOINS und dem Wikipedia Artikel über Normalisierung) nicht wirklich weiter.
Über ein paar Tipps/ Denkanstöße würde ich mich freuen - danke!
Gruß Gunther