Adresár článkov
MySQLzmeňte kombináciu typu index/vytvorenie/použitieMySQLpoužitie príkazového príkazu
MySQL indexy
Vytvorenie indexu MySQL je veľmi dôležité pre efektívnu prevádzku MySQL a index môže výrazne zlepšiť rýchlosť vyhľadávania MySQL.
Napríklad, ak je MySQL s rozumným dizajnom a použitím indexov Lamborghini, potom MySQL bez indexov a indexov je ľudská trojkolka.
Index sa delí na jednostĺpcový index a zložený index.Jednostĺpcový index, to znamená, že index obsahuje iba jeden stĺpec, tabuľka môže mať viacero jednostĺpcových indexov, nejde však o zložený index.Zložený index, to znamená, že index obsahuje viacero stĺpcov.
Pri vytváraní indexu sa musíte uistiť, že index je podmienkou aplikovanou na dotaz SQL (vo všeobecnosti ako podmienka klauzuly WHERE).
V skutočnosti je index tiež tabuľka, tabuľka ukladá polia primárneho kľúča a indexu a ukazuje na záznamy tabuľky entít.
Všetky vyššie uvedené sú o výhodách používania indexov, ale nadmerné používanie indexov povedie k zneužitiu.Preto bude mať index aj svoje nedostatky: hoci index výrazne zlepšuje rýchlosť dotazovania, zníži rýchlosť aktualizácie tabuľky, ako napríklad INSERT, UPDATE a DELETE v tabuľke.Pretože pri aktualizácii tabuľky MySQL ukladá nielen údaje, ale aj indexový súbor.
Indexovanie indexového súboru, ktorý zaberá miesto na disku.
normálny index
vytvoriť index
Toto je najzákladnejší index, nemá žiadne obmedzenia.Môže byť vytvorený nasledujúcimi spôsobmi:
CREATE INDEX indexName ON mytable(username(length));
Pri typoch CHAR a VARCHAR môže byť dĺžka menšia ako skutočná dĺžka poľa, pri typoch BLOB a TEXT je potrebné zadať dĺžku.
Upraviť štruktúru tabuľky (pridať index)
ALTER table tableName ADD INDEX indexName(columnName)
Špecifikujte priamo pri vytváraní tabuľky
CREATE TABLE mytable( ID INT NOT NULL, username VARCHAR(16) NOT NULL, INDEX [indexName] (username(length)) );
Syntax na zrušenie indexu
DROP INDEX [indexName] ON mytable;
jedinečný index
Je podobný predchádzajúcemu bežnému indexu, rozdiel je: hodnota stĺpca indexu musí byť jedinečná, ale sú povolené hodnoty null.V prípade zloženého indexu musí byť kombinácia hodnôt stĺpca jedinečná.Môže byť vytvorený nasledujúcimi spôsobmi:
vytvoriť index
CREATE UNIQUE INDEX indexName ON mytable(username(length))
Upravte štruktúru tabuľky
ALTER table mytable ADD UNIQUE [indexName] (username(length))
Špecifikujte priamo pri vytváraní tabuľky
CREATE TABLE mytable( ID INT NOT NULL, username VARCHAR(16) NOT NULL, UNIQUE [indexName] (username(length)) );
Pridajte a odstráňte indexy pomocou príkazu ALTER
Existujú štyri spôsoby, ako pridať index do tabuľky údajov:
- ALTER TABLE tbl_name PRIDAŤ PRIMÁRNY KĽÚČ (zoznam_stĺpcov): Tento príkaz pridáva primárny kľúč, čo znamená, že hodnoty indexu musia byť jedinečné a nemôžu byť NULL.
- ALTER TABLE názov_tbl ADD UNIQUE index_name (zoznam_stĺpcov): Hodnota indexu vytvoreného týmto príkazom musí byť jedinečná (okrem NULL, NULL sa môže objaviť viackrát).
- ALTER TABLE názov_tbl ADD INDEX názov_indexu (zoznam_stĺpcov): Pridajte normálny index, hodnota indexu sa môže objaviť viackrát.
- ALTER TABLE názov_tbl ADD FULLTEXT index_name (zoznam_stĺpcov):Príkaz špecifikuje index ako FULLTEXT pre fulltextové indexovanie.
Nasledujúci príklad slúži na pridanie indexu do tabuľky.
mysql> ALTER TABLE testalter_tbl ADD INDEX (c);
Na zrušenie indexov môžete použiť aj klauzulu DROP v príkaze ALTER.Skúste nasledujúcu inštanciu zrušiť index:
mysql> ALTER TABLE testalter_tbl DROP INDEX c;
Pridajte a odstráňte primárne kľúče pomocou príkazu ALTER
Primárny kľúč môže pôsobiť len na jeden stĺpec. Pri pridávaní indexu primárneho kľúča sa musíte uistiť, že primárny kľúč nie je predvolene NULL (NOT NULL).Príklady sú nasledovné:
mysql> ALTER TABLE testalter_tbl MODIFY i INT NOT NULL; mysql> ALTER TABLE testalter_tbl ADD PRIMARY KEY (i);
Primárny kľúč môžete odstrániť aj príkazom ALTER:
mysql> ALTER TABLE testalter_tbl DROP PRIMARY KEY;
Pri zrušení primárneho kľúča musíte zadať iba PRIMARY KEY, ale pri zrušení indexu musíte poznať názov indexu.
zobraziť indexové informácie
Pomocou príkazu SHOW INDEX môžete zobraziť zoznam relevantných indexových informácií v tabuľke.Výstupné informácie je možné naformátovať pridaním \G.
Vyskúšajte nasledujúce príklady:
mysql> SHOW INDEX FROM table_name; \G ........
Blog Hope Chen Weiliang ( https://www.chenweiliang.com/ ) zdieľaný „Typ/Vytvorenie/Použitie kombinácie príkazov ALTER Typ indexu databázy MySQL/Vytvorenie/Použitie príkazu ALTER v MySQL“, ktorý je pre vás užitočný.
Vitajte pri zdieľaní odkazu na tento článok:https://www.chenweiliang.com/cwl-496.html
Vitajte na telegramovom kanáli blogu Chen Weiliang, kde získate najnovšie aktualizácie!
📚 Táto príručka obsahuje obrovskú hodnotu, 🌟Toto je vzácna príležitosť, nenechajte si ju ujsť! ⏰⌛💨
Ak sa vám páči, zdieľajte a lajkujte!
Vaše zdieľanie a lajky sú našou neustálou motiváciou!