Index beim Erstellen einer neuen Tabelle (MySQL 5.0)

Board zum Thema mySQL
Antworten
k00ni
Beiträge: 1474
Registriert: 22. Juni 2006, 16:44
Kontaktdaten:

Index beim Erstellen einer neuen Tabelle (MySQL 5.0)

Beitrag von k00ni » 13. August 2008, 16:30

Hallo,

ich hab eine allgemeine Frage: Beim Erstellen einer neuen Tabelle gibts bei phpMyAdmin rechts 4 Radioboxen: Primary, index, Volltext und Unique. Wenn ich bei einer Spalte Index einstelle, dürfte über die doch ein Index erstellt werden, welcher mich schneller suchen lässt oder? Gibts da Unterschiede bei Strings und Zahlen? Was ist Volltext?


Grüße

Benutzeravatar
Powie
Administrator
Beiträge: 7454
Registriert: 4. März 2003, 09:32
Wohnort: Ilmtal
Kontaktdaten:

Index beim Erstellen einer neuen Tabelle (MySQL 5.0)

Beitrag von Powie » 13. August 2008, 17:27

Hi K00ni,

ja es wird ein Index erstellt, einfach erklärt:

Primary: Zum Beispiel bei einer eindeutigen ID, die einen Primärschlüssel definiert, hier wird immer ein Index erstellt.

Unique: Dies stellt sicher das in den Feldern keine doppelten Werte vorkommen können, versucht man per Update oder Insert ein Feld auf einen Wert zu bringen der schon vorhanden ist, so wirft mySQL weine Fehlermeldung.

Index: Ein ganz normaler Index, welcher Suchen und Sortieren enorm beschleunigt. Auch sehr wichtig wenn Felder in Joins benutzt werden! Über den Feldtyp musst du dir da keine Gedanken machen, dies organisiert mysql von selbst.

Volltext: Ein spezieller Volltextindex welcher, ich glaube nur bei LongVarchar und TEXT Feldern, eine Volltextsuche mit MATCH zulässt und beschleunigt. Nicht erschrecken, der Aufbau/Aktualisierung bei einer grossen Tabelle kann entsprechend lange dauern. daher läuft zum Bsp. Das Updatescript von pSys auf powie.de ca. 2 Minuten,wenn der Volltext Index der POST Tabelle aktualisiert wird.
*Never say Never* - [ Dropbox | Webspace ]

k00ni
Beiträge: 1474
Registriert: 22. Juni 2006, 16:44
Kontaktdaten:

Index beim Erstellen einer neuen Tabelle (MySQL 5.0)

Beitrag von k00ni » 13. August 2008, 17:31

Hallo,

danke für die Infos!

Antworten