Einzelnen Beitrag anzeigen

Benutzerbild von gsh
gsh

Registriert seit: 24. Okt 2004
1.542 Beiträge
 
Delphi XE Architect
 
#6

Re: Datenbank Design für einen Userserver

  Alt 27. Feb 2009, 09:38
Zitat von Basilikum:
Als Primary Key würde ich IMMER einen "synthetischen" Key verwenden (synthetisch im Sinne von, hat keinen Zusammenhang mit der realen Welt), insbesondere dann, wenn aus anderen Tabellen per Foreign Key darauf referenziert werden soll (als Referenz ist ein Varchar natürlich sehr ungeeignet)... um die Eindeutigkeit des Username sicherzustellen, würde sich ein Unique Key gut eignen
ahm ja Datenbanken ist nicht mein spezial gebiet, also bitte verzeih mir das ich nicht alles verstanden habe.
Also versuch ich mal das zu wiederholen, dass ich es verstehe:
Also den Usernamen zu verwenden um in anderen Tabellen auf diesen Usereintrag zu referenzieren wäre ziemlich schlecht da es ein Varchar ist (Bin ich der gleichen Meinung). Bis jetzt hab ich immer nur Primary Keys verwendet aber jetzt hab ich auch herausgefunden, dass ich im MySQL Administrator auch andere Indexe angeben kann. Somit hab ich jetzt einen neuen Index mit der Indexart UNIQUE und dem IndexTyp BTREE (war default) für den username erstellt. Aber was ist jetzt der genaue Unterschied schließlich kann bei einem Primär Key auch nichts doppelt sein? Wird der username dann auch richtig indiziert damit das ganze Performant ist wenn ich darauf eine Abfrage dafür erstelle?

Als Primären Key würdest du also einen "künstlichen" Key verwenden der nirgendwo anderes verwendet wird oder? Aber was bringt der mir dann? Das mit den Forgeign Keys habe ich mit Google so verstanden, dass ich damit Spalten von zwei Tabellen verknüpfen kann. Aber wie kann ich das dann genau verwenden und auf was muss ich dabei beachten?

Fragen über Fragen.
Alex
"Sage nicht alles, was du weißt, aber wisse alles, was du sagst!" Matthias Claudius
"Wer sich über Kritik ärgert, gibt zu, daß er sie verdient hat." Tacitus
  Mit Zitat antworten Zitat