Kombinacja typu indeksu bazy danych MySQL/tworzenie/użycie ALTER użycie instrukcji w MySQL

MySQLtyp indeksu/utwórz/użyj combo alter inMySQLużycie instrukcji polecenia

Indeksy MySQL

Ustanowienie indeksu MySQL jest bardzo ważne dla wydajnego działania MySQL, a indeks może znacznie poprawić szybkość wyszukiwania MySQL.

Na przykład, jeśli MySQL z rozsądnym projektem i wykorzystaniem indeksów jest Lamborghini, to MySQL bez indeksów i indeksów jest ludzkim trójkołowcem.

Indeks podzielony jest na indeks jednokolumnowy i indeks złożony.Indeks jednokolumnowy, czyli indeks zawiera tylko jedną kolumnę, tabela może mieć wiele indeksów jednokolumnowych, ale nie jest to indeks złożony.Indeks złożony, czyli indeks zawiera wiele kolumn.

Tworząc indeks, należy upewnić się, że indeks jest warunkiem, który dotyczy zapytania SQL (zwykle jako warunek klauzuli WHERE).

W rzeczywistości indeks jest również tabelą, tabela zapisuje klucz podstawowy i pola indeksu oraz wskazuje rekordy tabeli encji.

Powyższe mówi o korzyściach płynących z używania indeksów, ale nadmierne korzystanie z indeksów będzie prowadzić do nadużyć.W związku z tym indeks będzie miał również swoje wady: chociaż indeks znacznie poprawia szybkość zapytań, zmniejszy szybkość aktualizacji tabeli, takich jak INSERT, UPDATE i DELETE tabeli.Ponieważ podczas aktualizacji tabeli MySQL nie tylko zapisuje dane, ale także zapisuje plik indeksu.

Indeksowanie pliku indeksu, który zajmuje miejsce na dysku.


normalny indeks

utwórz indeks

Jest to najbardziej podstawowy indeks, nie ma ograniczeń.Można go stworzyć w następujący sposób:

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

Dla typów CHAR i VARCHAR długość może być mniejsza niż rzeczywista długość pola; dla typów BLOB i TEXT długość musi być określona.

Zmodyfikuj strukturę tabeli (dodaj indeks)

ALTER table tableName ADD INDEX indexName(columnName)

Określ bezpośrednio podczas tworzenia tabeli

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

Składnia usuwania indeksu

DROP INDEX [indexName] ON mytable; 

unikalny indeks

Jest podobny do poprzedniego zwykłego indeksu, różnica polega na tym, że wartość kolumny indeksu musi być unikalna, ale dozwolone są wartości null.W przypadku indeksu złożonego kombinacja wartości kolumn musi być unikalna.Można go stworzyć w następujący sposób:

utwórz indeks

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

Zmodyfikuj strukturę tabeli

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

Określ bezpośrednio podczas tworzenia tabeli

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

Dodaj i usuń indeksy za pomocą polecenia ALTER

Istnieją cztery sposoby dodania indeksu do tabeli danych:

  • ALTER TABLE nazwa_tabeli ADD PRIMARY KEY (column_list): Ta instrukcja dodaje klucz podstawowy, co oznacza, że ​​wartości indeksu muszą być unikalne i nie mogą być NULL.
  • ALTER TABLE nazwa_tabeli ADD UNIQUE nazwa_indeksu (lista_kolumn): Wartość indeksu utworzonego przez tę instrukcję musi być unikalna (z wyjątkiem NULL, NULL może pojawić się wiele razy).
  • ALTER TABLE nazwa_tabeli ADD INDEX nazwa_indeksu (lista_kolumn): Dodaj normalny indeks, wartość indeksu może pojawić się wielokrotnie.
  • ALTER TABLE nazwa_tabeli ADD FULLTEXT nazwa_indeksu (lista_kolumn):Instrukcja określa indeks jako FULLTEXT dla indeksowania pełnotekstowego.

Poniższy przykład polega na dodaniu indeksu do tabeli.

mysql> ALTER TABLE testalter_tbl ADD INDEX (c);

W celu usunięcia indeksów można również użyć klauzuli DROP w poleceniu ALTER.Wypróbuj następującą instancję, aby usunąć indeks:

mysql> ALTER TABLE testalter_tbl DROP INDEX c;

Dodaj i usuń klucze podstawowe za pomocą polecenia ALTER

Klucz podstawowy może działać tylko na jednej kolumnie. Podczas dodawania indeksu klucza podstawowego należy upewnić się, że domyślnie klucz podstawowy nie ma wartości NULL (NOT NULL).Przykłady są następujące:

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

Możesz także usunąć klucz podstawowy za pomocą polecenia ALTER:

mysql> ALTER TABLE testalter_tbl DROP PRIMARY KEY;

Wystarczy określić KLUCZ PODSTAWOWY przy usuwaniu klucza podstawowego, ale przy usuwaniu indeksu musisz znać nazwę indeksu.


pokaż informacje o indeksie

Możesz użyć komendy SHOW INDEX, aby wyświetlić w tabeli odpowiednie informacje o indeksie.Informacje wyjściowe można sformatować, dodając \G.

Wypróbuj następujące przykłady:

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

Nadzieja Chen Weiliang Blog ( https://www.chenweiliang.com/ ) udostępnił "MySQL Database Index Type/Create/Use Combination ALTER Statement Usage in MySQL", który jest dla Ciebie pomocny.

Zapraszamy do udostępnienia linku do tego artykułu:https://www.chenweiliang.com/cwl-496.html

Witamy na kanale Telegram bloga Chen Weiliang, aby uzyskać najnowsze aktualizacje!

🔔 Bądź pierwszą osobą, która otrzyma cenny „Przewodnik po użyciu narzędzia AI do marketingu treści ChatGPT” w głównym katalogu kanału! 🌟
📚 Ten przewodnik zawiera ogromną wartość, 🌟To rzadka okazja, nie przegap jej! ⏰⌛💨
Udostępnij i polub, jeśli chcesz!
Twoje udostępnianie i polubienia to nasza ciągła motywacja!

 

发表 评论

Twoj adres e-mail nie bedzie opublikowany. 必填 项 已 用 * 标注

przewiń na górę