Tom: Tabelle ohne Primary Key

Beitrag lesen

Hello,

das sind zwei verschiedene Schuhe.

Der Primary Key identifiziert den Datensatz und sollte frei von (cveränderlichen) Datenbezügen sein.
Man benötigt ihn, um zwischen wei Tabellen logische Verknüpfungen herstellen zu können.

Ein Primary Key (Eigenschlüssel, Hauptindex) korrespondiert dabei mit einem Foreign Key (Fremdschlüssel, Nebenindex)

Beispiel:

Tabelle USER            Tabelle LOGIN
  ============            ================
  ID_USER -------+        ID_LOGIN
  -------        |        --------
  VORNAME        +------> ID_USER
  NACHNAME                LOGINNAME -- UNIQUE INDEX   aus beiden nochmals
  STRASSE                 PASSWORD  --                einen UNIQUE
  PLZ                     LASTLOGIN
  ORT
  TEL

Über den Fremdschlüssel LOGIN.ID_USER wird eine Inklusion zur Tabelle USER hergestellt.
Das bedeutet, dass ein User durchaus mehrere Loginnamen haben kann und auch mehrere Passworte.
Wenn der User nun sein Passort ändert, bleibt er doch immer noch derselbe User.
Er (sie) kann auch seinen (ihren) Namen ändern. Darum behält sie trotzdem dasselbe Login.

Ich hoffe, der Unterschied zwischen datenbasierendem Kombinationsschlüssel
(Loginname - Passwort darf nur einmal vorhanden sein!) und logischen Schlüsseln ist klar geworden.

Harzliche Grüße vom Berg
http://www.annerschbarrich.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau