Tom: index mysql ?

Beitrag lesen

Hello,

letztendlich meine ich ... ich habe keinen Plan von Indexes und für welche Zwecke sie sinnvoll sind und wofür ich dann ihren "Namen" brauhce?

Was machst Du denn mit dem DBMS?

Vielleicht brauchst Du das auch nicht?
Das ist ja das vertrackte an Dingen, die man nicht kennt.
Man weiß gar nicht, dass sie einem fehlen.

Bei kleinen Datenmengen (einige 1000 Datensätze) kannst Du bei MySQL meistens ohne Index auskommen.
Wenn Du aber z.B. sicherstellen willst, dass ein Primärschlüssel vorhanden ist, dann muss dieser eineindeutig sein. Das bedeutet, dass es jeden Schlüsselwert nur genau einmal gibt und dass jeder Datensatz nur durch genau einen Schlüsselwert repräsentiert wird, Andersherum dann natürlich genauso: Jeder Schlüsselwert gehört zu genau einem Datensatz.

Um nun sicherzustellen, dass es jeden Schlüssel nur einmal gibt, richtet man einen UNIQUE INDEX ein. Mit dessen Hilfe sorgt das DBMS dann dafür, dass keine Soubletten eingetragen werden können.
Bei einem Insert würde der Datensatz mit dem doppelten Schlüsselwert abgelehnt werden. Hier bekommst Du dann eine Fehlermeldung, die Dir sagt, warum.

Ich schlage Dir vor, das einfach mal auszuprobieren.
Das geht am einfachsten in der MySQL-Konsole (mysql> ) oder im phpMyAdmin oder in SQL-Front (www.sql-front.de) oder vergleichbaren Tools, aber selbstverständlich auch mit Hilfe von PHP.

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

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau
Ein Jammer ist auch, dass die Dummen so selbstsicher und die Klugen voller Zweifel sind. Das sollte uns häufiger zweifeln lassen :-)