MySQL-Datenbank-Indextyp/Erstellen/Verwenden-Kombination ALTER-Anweisungsverwendung in MySQL

MySQLindex type/create/use Combo ändern inMySQLVerwendung der Befehlsanweisung

MySQL-Indizes

Die Einrichtung des MySQL-Index ist sehr wichtig für den effizienten Betrieb von MySQL, und der Index kann die Abrufgeschwindigkeit von MySQL erheblich verbessern.

Wenn zum Beispiel ein richtig entworfenes und indiziertes MySQL ein Lamborghini ist, dann ist MySQL ohne ein indiziertes Design ein menschliches Dreirad.

Der Index ist in einen einspaltigen Index und einen zusammengesetzten Index unterteilt.Einspaltiger Index, d. h. ein Index enthält nur eine einzige Spalte, eine Tabelle kann mehrere einspaltige Indizes haben, aber das ist kein zusammengesetzter Index.Zusammengesetzter Index, d. h. ein Index enthält mehrere Spalten.

Beim Erstellen eines Index müssen Sie sicherstellen, dass der Index eine Bedingung ist, die für die SQL-Abfrage gilt (normalerweise als Bedingung der WHERE-Klausel).

Tatsächlich ist der Index auch eine Tabelle, die Tabelle speichert den Primärschlüssel und die Indexfelder und zeigt auf die Datensätze der Entitätstabelle.

Das oben Gesagte dreht sich alles um die Vorteile der Verwendung von Indizes, aber die übermäßige Verwendung von Indizes führt zu Missbrauch.Daher wird der Index auch seine Mängel haben: Obwohl der Index die Abfragegeschwindigkeit erheblich verbessert, verringert er die Geschwindigkeit der Aktualisierung der Tabelle, wie z. B. INSERT, UPDATE und DELETE der Tabelle.Denn beim Aktualisieren der Tabelle speichert MySQL nicht nur die Daten, sondern auch die Indexdatei.

Indizieren einer Indexdatei, die Speicherplatz verbraucht.


normaler Index

Index erstellen

Dies ist der einfachste Index, er hat keine Einschränkungen.Es kann auf folgende Weise erstellt werden:

CREATE INDEX indexName ON mytable(username(length)); 

Bei den Typen CHAR und VARCHAR kann die Länge kleiner sein als die tatsächliche Länge des Felds, bei den Typen BLOB und TEXT muss die Länge angegeben werden.

Tabellenstruktur ändern (Index hinzufügen)

ALTER table tableName ADD INDEX indexName(columnName)

Direkt beim Erstellen der Tabelle angeben

CREATE TABLE mytable(  
 
ID INT NOT NULL,   
 
username VARCHAR(16) NOT NULL,  
 
INDEX [indexName] (username(length))  
 
);  

Syntax zum Löschen eines Index

DROP INDEX [indexName] ON mytable; 

eindeutiger Index

Es ähnelt dem vorherigen gewöhnlichen Index, der Unterschied ist: Der Wert der Indexspalte muss eindeutig sein, aber Nullwerte sind zulässig.Bei einem zusammengesetzten Index muss die Kombination der Spaltenwerte eindeutig sein.Es kann auf folgende Weise erstellt werden:

Index erstellen

CREATE UNIQUE INDEX indexName ON mytable(username(length)) 

Tabellenstruktur ändern

ALTER table mytable ADD UNIQUE [indexName] (username(length))

Direkt beim Erstellen der Tabelle angeben

CREATE TABLE mytable(  
 
ID INT NOT NULL,   
 
username VARCHAR(16) NOT NULL,  
 
UNIQUE [indexName] (username(length))  
 
);  

Hinzufügen und Entfernen von Indizes mit dem ALTER-Befehl

Es gibt vier Möglichkeiten, einer Datentabelle einen Index hinzuzufügen:

  • ALTER TABLE tbl_name PRIMÄRSCHLÜSSEL HINZUFÜGEN (column_list): Diese Anweisung fügt einen Primärschlüssel hinzu, was bedeutet, dass Indexwerte eindeutig sein müssen und nicht NULL sein können.
  • ALTER TABLE tbl_name ADD UNIQUE index_name (column_list): Der Wert des Index, der durch diese Anweisung erstellt wird, muss eindeutig sein (außer NULL, NULL kann mehrmals vorkommen).
  • ALTER TABLE tbl_name ADD INDEX index_name (Spaltenliste): Fügen Sie einen normalen Index hinzu, der Indexwert kann mehrfach vorkommen.
  • ALTER TABLE tbl_name ADD FULLTEXT index_name (column_list):Die Anweisung gibt den Index als FULLTEXT für die Volltextindizierung an.

Im folgenden Beispiel wird einer Tabelle ein Index hinzugefügt.

mysql> ALTER TABLE testalter_tbl ADD INDEX (c);

Sie können auch die DROP-Klausel des ALTER-Befehls verwenden, um Indizes zu löschen.Versuchen Sie die folgende Instanz, um den Index zu löschen:

mysql> ALTER TABLE testalter_tbl DROP INDEX c;

Fügen Sie Primärschlüssel mit dem ALTER-Befehl hinzu und entfernen Sie sie

Der Primärschlüssel kann nur auf eine Spalte wirken.Wenn Sie einen Primärschlüsselindex hinzufügen, müssen Sie sicherstellen, dass der Primärschlüssel standardmäßig nicht NULL ist (NOT NULL).Beispiele sind wie folgt:

mysql> ALTER TABLE testalter_tbl MODIFY i INT NOT NULL;
mysql> ALTER TABLE testalter_tbl ADD PRIMARY KEY (i);

Sie können einen Primärschlüssel auch mit dem ALTER-Befehl löschen:

mysql> ALTER TABLE testalter_tbl DROP PRIMARY KEY;

Sie müssen den PRIMARY KEY nur angeben, wenn Sie den Primärschlüssel löschen, aber wenn Sie einen Index löschen, müssen Sie den Indexnamen kennen.


Indexinformationen anzeigen

Mit dem SHOW INDEX-Befehl können Sie die relevanten Indexinformationen in der Tabelle auflisten.Die Ausgabeinformationen können durch Hinzufügen von \G formatiert werden.

Probieren Sie die folgenden Beispiele aus:

mysql> SHOW INDEX FROM table_name; \G
........

Hoffnung Chen Weiliang Blog ( https://www.chenweiliang.com/ ) hat „MySQL Database Index Type/Create/Use Combination ALTER Statement Usage in MySQL“ freigegeben, was für Sie hilfreich ist.

Willkommen, um den Link dieses Artikels zu teilen:https://www.chenweiliang.com/cwl-496.html

Willkommen im Telegrammkanal von Chen Weiliangs Blog, um die neuesten Updates zu erhalten!

🔔 Seien Sie der Erste, der den wertvollen „ChatGPT Content Marketing AI Tool Usage Guide“ im Kanal-Top-Verzeichnis erhält! 🌟
📚 Dieser Leitfaden enthält einen enormen Mehrwert. 🌟Dies ist eine seltene Gelegenheit, verpassen Sie sie nicht! ⏰⌛💨
Teilen und liken, wenn es euch gefällt!
Ihr Teilen und Ihre Likes sind unsere ständige Motivation!

 

发表 评论

Deine Email-Adresse wird nicht veröffentlicht. 必填 项 已 已 * 标注

nach oben scrollen