MySQL-database-indextype/aanmaken/gebruiken combinatie ALTER-instructie gebruik in MySQL

MySQLindex type/maak/gebruik combo wijzigen inMySQLopdracht instructie gebruik

MySQL-indexen

Het opzetten van de MySQL-index is erg belangrijk voor de efficiënte werking van MySQL, en de index kan de ophaalsnelheid van MySQL aanzienlijk verbeteren.

Als een goed ontworpen en geïndexeerde MySQL bijvoorbeeld een Lamborghini is, dan is MySQL zonder een geïndexeerd ontwerp een menselijke driewieler.

De index is onderverdeeld in een eenkolomsindex en een samengestelde index.Index met één kolom, dat wil zeggen, een index bevat slechts één kolom, een tabel kan meerdere indexen met één kolom hebben, maar dit is geen samengestelde index.Samengestelde index, dat wil zeggen dat één index meerdere kolommen bevat.

Wanneer u een index maakt, moet u ervoor zorgen dat de index een voorwaarde is die van toepassing is op de SQL-query (meestal als een voorwaarde van de WHERE-clausule).

In feite is de index ook een tabel, de tabel slaat de primaire sleutel- en indexvelden op en verwijst naar de records van de entiteitstabel.

Bovenstaande gaat over de voordelen van het gebruik van indexen, maar overmatig gebruik van indexen leidt tot misbruik.Daarom zal de index ook zijn tekortkomingen hebben: hoewel de index de querysnelheid aanzienlijk verbetert, zal het de snelheid van het bijwerken van de tabel verminderen, zoals INSERT, UPDATE en DELETE van de tabel.Want bij het bijwerken van de tabel slaat MySQL niet alleen de gegevens op, maar ook het indexbestand.

Indexeren van een indexbestand dat schijfruimte in beslag neemt.


normale index

index maken

Dit is de meest elementaire index, er zijn geen beperkingen.Het kan op de volgende manieren worden gemaakt:

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

Voor de typen CHAR en VARCHAR kan de lengte kleiner zijn dan de werkelijke lengte van het veld; voor de typen BLOB en TEXT moet de lengte worden opgegeven.

Tabelstructuur wijzigen (index toevoegen)

ALTER table tableName ADD INDEX indexName(columnName)

Geef direct op bij het maken van de tabel

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

Syntaxis om een ​​index te verwijderen

DROP INDEX [indexName] ON mytable; 

unieke index

Het is vergelijkbaar met de vorige gewone index, het verschil is: de waarde van de indexkolom moet uniek zijn, maar null-waarden zijn toegestaan.In het geval van een samengestelde index moet de combinatie van kolomwaarden uniek zijn.Het kan op de volgende manieren worden gemaakt:

index maken

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

Tabelstructuur wijzigen

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

Geef direct op bij het maken van de tabel

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

Indexen toevoegen en verwijderen met de opdracht ALTER

Er zijn vier manieren om een ​​index aan een gegevenstabel toe te voegen:

  • ALTER TABLE tbl_name PRIMAIRE SLEUTEL TOEVOEGEN (column_list): Deze instructie voegt een primaire sleutel toe, wat betekent dat indexwaarden uniek moeten zijn en niet NULL kunnen zijn.
  • ALTER TABLE tbl_name ADD UNIEKE index_name (column_list): De waarde van de index die door deze instructie wordt gemaakt, moet uniek zijn (behalve NULL, NULL kan meerdere keren voorkomen).
  • ALTER TABLE tbl_name VOEG INDEX TOE index_name (column_list): Voeg een normale index toe, de indexwaarde kan meerdere keren voorkomen.
  • TABEL WIJZIGEN tbl_name VOEG FULLTEXT index_name toe (column_list):De instructie specificeert de index als FULLTEXT voor indexering van volledige tekst.

Het volgende voorbeeld is om een ​​index aan een tabel toe te voegen.

mysql> ALTER TABLE testalter_tbl ADD INDEX (c);

U kunt ook de DROP-component van de ALTER-opdracht gebruiken om indexen te verwijderen.Probeer het volgende exemplaar om de index te verwijderen:

mysql> ALTER TABLE testalter_tbl DROP INDEX c;

Primaire sleutels toevoegen en verwijderen met de opdracht ALTER

De primaire sleutel kan slechts op één kolom werken. Wanneer u een primaire sleutelindex toevoegt, moet u ervoor zorgen dat de primaire sleutel niet standaard NULL is (NIET NULL).Voorbeelden zijn als volgt:

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

U kunt een primaire sleutel ook verwijderen met het ALTER-commando:

mysql> ALTER TABLE testalter_tbl DROP PRIMARY KEY;

U hoeft alleen de PRIMARY KEY op te geven wanneer u de primaire sleutel verwijdert, maar wanneer u een index verwijdert, moet u de indexnaam weten.


toon indexinformatie

U kunt de opdracht SHOW INDEX gebruiken om de relevante indexinformatie in de tabel weer te geven.De uitvoerinformatie kan worden opgemaakt door \G toe te voegen.

Probeer de volgende voorbeelden:

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

Hoop Chen Weiliang Blog ( https://www.chenweiliang.com/ ) gedeeld "MySQL Database Index Type/Create/Use Combination ALTER Statement Usage in MySQL", wat nuttig voor u is.

Welkom om de link van dit artikel te delen:https://www.chenweiliang.com/cwl-496.html

Welkom op het Telegram-kanaal van Chen Weiliang's blog voor de laatste updates!

🔔 Wees de eerste die de waardevolle "ChatGPT Content Marketing AI Tool Usage Guide" in de bovenste kanaaldirectory ontvangt! 🌟
📚 Deze gids bevat enorme waarde, 🌟Dit is een zeldzame kans, mis hem niet! ⏰⌛💨
Deel en like als je wilt!
Uw delen en likes zijn onze voortdurende motivatie!

 

发表 评论

Uw e-mailadres wordt niet gepubliceerd. 必填 项 已 用 * 标注

scroll naar boven