Methode und Einführung der Tabellenindexdefinition in MySQL

Methode und Einführung der Tabellenindexdefinition in MySQL

Überblick

Ein Index ist eine vom DBMS basierend auf einer oder mehreren Spalten einer Tabelle in einer bestimmten Reihenfolge erstellte Entsprechungstabelle zwischen Spaltenwerten und Datensatzzeilen, die die DBA-Verwaltung erleichtert.

  • Indizes werden in Form von Dateien gespeichert. Das DBMS speichert alle Inhalte einer Tabelle in derselben Indexdatei, die Speicherplatz beansprucht. Bei einer großen Anzahl von Indizes kann die maximale Dateigröße schneller erreicht werden als die Datendatei.
  • Während Indizes die Abfragegeschwindigkeit erhöhen, verringern sie auch die Geschwindigkeit der Tabellenaktualisierung. Beim Aktualisieren der Daten in der Indexspalte in der Tabelle wird der Index automatisch aktualisiert, um sicherzustellen, dass der Indexbaum vollständig mit dem Inhalt in der Tabelle übereinstimmt. Je mehr Indizes vorhanden sind, desto länger dauert daher die Aktualisierung.

Entsprechend ihrer Verwendung werden Indizes logisch in drei Kategorien unterteilt

  1. Normaler Index (INDEX): Der grundlegendste Indextyp ohne jegliche Einschränkungen. Normalerweise verwenden Sie das Schlüsselwort INDEX oder KEY
  2. Eindeutiger Index (UNIQUE): Alle Werte im Index dürfen nur einmal vorkommen und müssen eindeutig sein. Meist wird das Schlüsselwort UNIQUE verwendet.
  3. PRIMÄRSCHLÜSSEL: Ein Primärschlüssel ist ein eindeutiger Index. Beim Erstellen eines Primärschlüssels müssen Sie das Schlüsselwort PRIMARY KEY angeben, das keinen Nullwert haben darf. Es wird normalerweise beim Erstellen einer Tabelle angegeben und kann auch durch Ändern der Tabelle hinzugefügt werden. Jede Tabelle kann nur einen Primärschlüssel haben.

Index erstellen

Es gibt drei Möglichkeiten zum Erstellen von Indizes:

INDEX ERSTELLEN

CREATE [UNIQUE] INDEX Indexname
KEIN Tabellenname (Indexspaltenname, …)
  1. UNIQUE: Gibt an, dass ein eindeutiger Index erstellt werden soll. Für eine Tabelle können mehrere Indizes erstellt werden, und jeder Index hat einen eindeutigen Namen in der Tabelle.
  2. tabl_name: Name der Datenbanktabelle
  3. index_col_name: Beschreibung des Index. Das Format ist col_name[(Länge)][ASC|DESC]

Die drei grammatikalischen Elemente der Indexbeschreibung

  • Spaltenname
  • Länge
  • Aufsteigend|Absteigend
mysql>INDEX ERSTELLEN index_customers
-> KEINE mysql_test.customers (cust_name(3)ASC)
Abfrage OK, 0 Zeilen betroffen (0,20 Sek.)
Datensätze:0 Duplikate:0 Warnung:0

TABELLE ERSTELLEN

  • [CONSTRAINT [symbol]] PRIMARY KEY (index_col_name,...) : Erstellt einen Primärschlüssel für eine neue Tabelle, während diese erstellt wird
  • {INDEX|KEY}[index_name](index_col_name,...): Erstellen Sie beim Erstellen der Tabelle einen Index für eine Tabelle.
  • [CONSTRAINT [Symbol]] UNIQUE [INDEX|KEY] [Indexname] (Indexspaltenname, ...) : Wird verwendet, um beim Erstellen einer Tabelle einen eindeutigen Index zu erstellen.
  • [CONSTRATIN [symbol]] FOREIGN KEY[index_name] (index_col_name,...) : Beim Erstellen einer Tabelle einen Fremdschlüssel erstellen
  • KEY: Synonym für das Schlüsselwort INDEX
  • CONSTRAINT: Definiert einen Namen für den Primärschlüssel, den UNIQUE-Schlüssel und den Fremdschlüssel. Wenn Sie CREATE TABLE zum Definieren von Spaltenoptionen verwenden, können Sie einen Primärschlüssel hinzufügen, indem Sie PRIMARY KEY direkt nach einer Spaltendefinition hinzufügen. Diese Methode kann nicht verwendet werden, wenn der Primärschlüssel aus einem mehrspaltigen Index besteht, der aus mehreren Spalten besteht.
mysql> Verwenden Sie mysql_test
Datenbank geändert
mysql> CREATE TABLE Verkäufer
->(
-> Verkäufer-ID int NICHT NULL AUTO_INCREMENT
-> Verkäufername char(50) NICHT NLULL,
-> Verkäuferadresse char(50) null,
-> Produkttyp int(5) NULL
-> Umsatz int NULL
-> PRIMÄRSCHLÜSSEL (Verkäufer-ID, Produkttyp)
-> INDEX index_seller(Verkäufer)
->)
Abfrage OK, 0 Zeilen betroffen (0,20 Sek.)

ALTER TABLE

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM.

Das könnte Sie auch interessieren:
  • Einige wichtige Punkte des MySQL-Tabellenindex

<<:  Einfache Implementierung von Mini-Vue-Rendering

>>:  Erstellen Sie in 5 Minuten einen WebRTC-Videochat

Artikel empfehlen

So fügen Sie Docker dynamisch Ports hinzu, ohne das Image neu zu erstellen

Manchmal müssen Sie während des Betriebs freigege...

Detaillierte Erklärung der Verwendung von publicPath in Webpack

Inhaltsverzeichnis Ausgabe Ausgabepfad Ausgabe.öf...

N Möglichkeiten, mit CSS ein zweispaltiges Layout zu erreichen

1. Was ist ein zweispaltiges Layout? Es gibt zwei...

Häufige Ursachen und Lösungen für langsame MySQL-SQL-Anweisungen

1. Langsame Abfrage aufgrund fehlenden oder ungül...

Beispiel für die Anpassung von rem an mobile Geräte

Vorwort Überprüfung und Zusammenfassung von REM-A...

Die Verknüpfungsmethode zwischen Menü und Registerkarte von vue+iview

Vue+iview-Menü und Tab-Verknüpfung Ich entwickle ...

Zusammenfassung und Analyse häufig verwendeter Docker-Befehle und Beispiele

Inhalt 1. Container-Lebenszyklusmanagement (1) Do...

So verwenden Sie Verbindungen der Physik-Engine in CocosCreator

Inhaltsverzeichnis Mausgelenk Mausgelenk AbstandG...

Detaillierte Erläuterung des CocosCreator-Nachrichtenverteilungsmechanismus

Überblick Dieser Artikel beginnt mit der Einführu...

CSS3-Randeffekte

Was ist CSS? CSS (Abkürzung für Cascading Style S...

3 Tipps, die Sie beim Erlernen von JavaScript kennen müssen

Inhaltsverzeichnis 1. Der magische Erweiterungsop...

So ändern Sie die Farbe der gesamten Zeile (tr), wenn die Maus in HTML stoppt

Verwenden Sie reines CSS, um die Hintergrundfarbe...