Looking for mysql Keywords? Try Ask4Keywords

MySQLIndizes und Schlüssel


Syntax

  • - Erstellen Sie einen einfachen Index

    CREATE INDEX Indexname ON Tabellenname ( Spaltenname1 [, Spaltenname2 , ...])

  • - Erstellen Sie einen eindeutigen Index

    CREATE UNIQUE INDEX Indexname ON Tabellenname ( Spaltenname1 [, Spaltenname2 , ...)

  • - Index löschen

    DROP INDEX index_name ON tabelle_name [ algorithm_option | lock_option ] ...

    algorithm_option: ALGORITHM [=] {DEFAULT | INPLACE | COPY}

    lock_option: LOCK [=] {DEFAULT | NONE | SHARED | EXCLUSIVE}

Bemerkungen

Konzepte

Ein Index in einer MySQL-Tabelle funktioniert wie ein Index in einem Buch.

Nehmen wir an, Sie haben ein Buch über Datenbanken und möchten Informationen zum Speicher finden. Ohne einen Index (vorausgesetzt, es gibt keine andere Hilfe, z. B. ein Inhaltsverzeichnis), müssen Sie die Seiten einzeln durchgehen, bis Sie das Thema gefunden haben (das ist ein "vollständiger Tabellenscan"). Auf der anderen Seite enthält ein Index eine Liste mit Schlüsselwörtern, sodass Sie den Index nachschlagen und feststellen können, dass Speicher auf den Seiten 113-120, 231 und 354 erwähnt wird. Dann könnten Sie diese Seiten direkt durchsuchen, ohne zu suchen (das ist eine Suche mit einem Index, etwas schneller).

Natürlich hängt der Nutzen des Index von vielen Faktoren ab - einige Beispiele, die das obige Gleichnis verwenden:

  • Wenn Sie ein Buch über Datenbanken hatten und das Wort "Datenbank" indizierten, wird es möglicherweise auf den Seiten 1-59, 61-290 und 292-400 erwähnt. Das sind viele Seiten, und in einem solchen Fall ist der Index keine große Hilfe und es könnte schneller sein, die Seiten einzeln zu durchlaufen. (In einer Datenbank ist dies "schlechte Selektivität".)
  • Bei einem 10-seitigen Buch ist es nicht sinnvoll, einen Index zu erstellen, da am Ende ein 10-seitiges Buch mit einem 5-seitigen Index anfangen kann, was einfach dumm ist - scannen Sie einfach die 10 Seiten und machen Sie es fertig .
  • Der Index muss auch nützlich sein - generell gibt es keinen Sinn für die Indexierung, beispielsweise die Häufigkeit des Buchstabens "L" pro Seite.

Indizes und Schlüssel Verwandte Beispiele