MySQL adatbázis-index típusa/létrehozása/használata kombináció ALTER utasításhasználat a MySQL-ben

MySQLindex típusa/létrehozása/használata kombó megváltoztatása beMySQLparancs utasítás használata

MySQL indexek

A MySQL index létrehozása nagyon fontos a MySQL hatékony működéséhez, és az index nagyban javíthatja a MySQL visszakeresési sebességét.

Például, ha a MySQL ésszerű tervezéssel és indexek használatával egy Lamborghini, akkor az indexek és indexek nélküli MySQL egy emberi tricikli.

Az index egyoszlopos indexre és összetett indexre oszlik.Egyoszlopos index, vagyis egy index csak egyetlen oszlopot tartalmaz, egy táblának több egyoszlopos indexe is lehet, de ez nem összetett index.Összetett index, azaz egy index több oszlopot tartalmaz.

Index létrehozásakor meg kell győződnie arról, hogy az index az SQL lekérdezésre vonatkozó feltétel (általában a WHERE záradék feltétele).

Valójában az index egyben egy táblázat is, a tábla menti az elsődleges kulcsot és az indexmezőket, és az entitástábla rekordjaira mutat.

A fentiek az indexek használatának előnyeiről beszélnek, de az indexek túlzott használata visszaélésekhez vezet.Ezért az indexnek is lesznek hiányosságai: bár az index nagymértékben javítja a lekérdezési sebességet, lecsökkenti a tábla frissítési sebességét, mint például a tábla INSERT, UPDATE és DELETE.Ugyanis a tábla frissítésekor a MySQL nem csak az adatokat menti, hanem az indexfájlt is.

Lemezterületet foglaló indexfájl indexelése.


normál index

index létrehozása

Ez a legalapvetőbb index, nincs korlátozása.A következő módokon hozható létre:

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

A CHAR és VARCHAR típusoknál a hossz kisebb lehet, mint a mező tényleges hossza, a BLOB és TEXT típusoknál a hosszt meg kell adni.

Táblaszerkezet módosítása (index hozzáadása)

ALTER table tableName ADD INDEX indexName(columnName)

Közvetlenül adja meg a táblázat létrehozásakor

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

Szintaxis egy index eldobásához

DROP INDEX [indexName] ON mytable; 

egyedi index

Hasonló az előző szokásos indexhez, a különbség a következő: az index oszlop értékének egyedinek kell lennie, de a null értékek megengedettek.Összetett index esetén az oszlopértékek kombinációjának egyedinek kell lennie.A következő módokon hozható létre:

index létrehozása

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

Módosítsa a táblázat szerkezetét

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

Közvetlenül adja meg a táblázat létrehozásakor

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

Indexek hozzáadása és eltávolítása az ALTER paranccsal

Négyféleképpen adhat hozzá indexet egy adattáblázathoz:

  • ALTER TABLE tbl_name ADD ELSŐDLEGES KULCS (oszlop_lista): Ez az utasítás egy elsődleges kulcsot ad hozzá, ami azt jelenti, hogy az indexértékeknek egyedinek kell lenniük, és nem lehetnek NULL-ok.
  • ALTER TABLE tbl_name ADD UNIQUE index_name (oszloplista): Az utasítás által létrehozott index értékének egyedinek kell lennie (kivéve a NULL-t, a NULL többször is megjelenhet).
  • ALTER TABLE tbl_name ADD INDEX index_name (oszloplista): Adjon hozzá egy normál indexet, az index értéke többször is megjelenhet.
  • ALTER TABLE tbl_name ADD FULLTEXT index_name (oszloplista):Az utasítás TELJESSZÖVEG-ként határozza meg az indexet a teljes szöveges indexeléshez.

A következő példa index hozzáadása a táblázathoz.

mysql> ALTER TABLE testalter_tbl ADD INDEX (c);

Az indexek eldobásához használhatja az ALTER parancs DROP záradékát is.Próbálkozzon a következő példával az index eldobásához:

mysql> ALTER TABLE testalter_tbl DROP INDEX c;

Elsődleges kulcsok hozzáadása és eltávolítása az ALTER paranccsal

Az elsődleges kulcs csak egy oszlopra tud hatni.Az elsődleges kulcsindex hozzáadásakor ügyelni kell arra, hogy az elsődleges kulcs alapértelmezés szerint ne legyen NULL (NOT NULL).Példák a következők:

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

Az elsődleges kulcsot az ALTER paranccsal is törölheti:

mysql> ALTER TABLE testalter_tbl DROP PRIMARY KEY;

Csak az elsődleges kulcs eldobásakor kell megadni az ELSŐDLEGES KULCSOT, de index eldobásakor ismerni kell az index nevét.


mutatják az index információkat

A SHOW INDEX paranccsal kilistázhatja a releváns indexinformációkat a táblázatban.A kimeneti információ formázható a \G hozzáadásával.

Próbálja ki a következő példákat:

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

Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ).

Üdvözöljük a cikk linkjének megosztásában:https://www.chenweiliang.com/cwl-496.html

Üdvözöljük Chen Weiliang blogjának Telegram csatornáján, hogy értesüljön a legfrissebb hírekről!

🔔 Legyen Ön az első, aki megkapja az értékes "ChatGPT Content Marketing AI Tool használati útmutatót" a csatorna felső könyvtárában! 🌟
📚 Ez az útmutató hatalmas értéket tartalmaz, 🌟 Ritka lehetőség ez, ne hagyd ki! ⏰⌛💨
Oszd meg és lájkold, ha tetszik!
Az Ön megosztása és lájkja folyamatos motivációnk!

 

发表 评论

Az e-mail címed nem kerül nyilvánosságra. A kötelező mezőket használjuk * Címke

görgess a tetejére