Hi,
Benutzer können sich auf meiner Seite anmelden und verschiedene Dinge tun, zum Beispiel in einem Forum einen Beitrag schreiben. Der Anmeldename ist unique. Sollte ich nun den Anmeldenamen als Primäschlüssel verwenden oder lieber einen Integer (autoincrement), um die Datensätze (zum Beispiel Benutzer zu Foreneintrag) zu verknüpfen (Fremdschlüssel)... Was ist performanter?
Zahlen belegen i.d.R. weniger Platz als Strings.
Wie macht Ihr das? Und was spricht für Strings und gegen ID bzw. umgekehrt?
Gegenfrage: Warum sollte man es je nach Fall unterschiedlich machen? Als Primärschlüssel wird allenthalben eine nummerische ID verwendet. Dies ist üblich, etabliert, augenscheinlich effizient. Und es darf erwartet werden. Um von diesem allgemeingültigen (fast jede Tabelle hat einen nummerischen PK) Vorgehen abzugehen solltest Du einen guten Grund haben, nicht das Fehlen von Gegenargumenten.
(Was übrigens impliziert, dass ein textueller PK durchaus sinnvoll sein kann. In aller Regel ist er es aber nicht.)
Cheatah
X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
X-Will-Answer-Email: No
X-Please-Search-Archive-First: Absolutely Yes