Type d'index de base de données MySQL/créer/utiliser la combinaison utilisation de l'instruction ALTER dans MySQL

MySQLindex type/créer/utiliser combo modifier dansMySQLutilisation de l'instruction de commande

Index MySQL

L'établissement de l'index MySQL est très important pour le fonctionnement efficace de MySQL, et l'index peut grandement améliorer la vitesse de récupération de MySQL.

Par exemple, si MySQL avec une conception et une utilisation raisonnables des index est une Lamborghini, alors MySQL sans index ni index est un tricycle humain.

L'index est divisé en index à colonne unique et en index composite.Index à une seule colonne, c'est-à-dire qu'un index ne contient qu'une seule colonne, une table peut avoir plusieurs index à une seule colonne, mais il ne s'agit pas d'un index composite.Index composite, c'est-à-dire qu'un index contient plusieurs colonnes.

Lors de la création d'un index, vous devez vous assurer que l'index est une condition appliquée à la requête SQL (généralement en tant que condition de la clause WHERE).

En fait, l'index est aussi une table, la table enregistre les champs de clé primaire et d'index, et pointe vers les enregistrements de la table des entités.

Ce qui précède parle des avantages de l'utilisation des index, mais une utilisation excessive des index conduira à des abus.Par conséquent, l'index aura également ses défauts : bien que l'index améliore considérablement la vitesse de requête, il réduira la vitesse de mise à jour de la table, comme INSERT, UPDATE et DELETE sur la table.Parce que lors de la mise à jour de la table, MySQL enregistre non seulement les données, mais enregistre également le fichier d'index.

Indexation d'un fichier d'index qui consomme de l'espace disque.


Index normal

créer un index

C'est l'indice le plus basique, il n'a aucune restriction.Il peut être créé des manières suivantes :

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

Pour les types CHAR et VARCHAR, la longueur peut être inférieure à la longueur réelle du champ ; pour les types BLOB et TEXT, la longueur doit être spécifiée.

Modifier la structure de la table (ajouter un index)

ALTER table tableName ADD INDEX indexName(columnName)

Spécifiez directement lors de la création de la table

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

Syntaxe pour supprimer un index

DROP INDEX [indexName] ON mytable; 

Index unique

Il est similaire à l'index ordinaire précédent, la différence est la suivante : la valeur de la colonne d'index doit être unique, mais les valeurs nulles sont autorisées.Dans le cas d'un index composite, la combinaison des valeurs des colonnes doit être unique.Il peut être créé des manières suivantes :

créer un index

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

Modifier la structure du tableau

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

Spécifiez directement lors de la création de la table

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

Ajouter et supprimer des index à l'aide de la commande ALTER

Il existe quatre façons d'ajouter un index à une table de données :

  • ALTER TABLE nom_table ADD PRIMARY KEY (column_list) : Cette instruction ajoute une clé primaire, ce qui signifie que les valeurs d'index doivent être uniques et ne peuvent pas être NULL.
  • ALTER TABLE nom_tbl ADD UNIQUE nom_index (liste_colonnes) : La valeur de l'index créé par cette instruction doit être unique (sauf NULL, NULL peut apparaître plusieurs fois).
  • ALTER TABLE nom_tbl ADD INDEX nom_index (liste_colonne) : Ajoutez un index normal, la valeur de l'index peut apparaître plusieurs fois.
  • ALTER TABLE nom_tbl ADD FULLTEXT nom_index (liste_colonnes) :L'instruction spécifie l'index comme FULLTEXT pour l'indexation de texte intégral.

L'exemple suivant consiste à ajouter un index à une table.

mysql> ALTER TABLE testalter_tbl ADD INDEX (c);

Vous pouvez également utiliser la clause DROP dans la commande ALTER pour supprimer des index.Essayez l'instance suivante pour supprimer l'index :

mysql> ALTER TABLE testalter_tbl DROP INDEX c;

Ajouter et supprimer des clés primaires à l'aide de la commande ALTER

La clé primaire ne peut agir que sur une colonne. Lors de l'ajout d'un index de clé primaire, vous devez vous assurer que la clé primaire n'est pas NULL par défaut (NOT NULL).Les exemples sont les suivants :

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

Vous pouvez également supprimer une clé primaire avec la commande ALTER :

mysql> ALTER TABLE testalter_tbl DROP PRIMARY KEY;

Vous n'avez qu'à spécifier la PRIMARY KEY lors de la suppression de la clé primaire, mais lors de la suppression d'un index, vous devez connaître le nom de l'index.


afficher les informations d'index

Vous pouvez utiliser la commande SHOW INDEX pour répertorier les informations d'index pertinentes dans la table.Les informations de sortie peuvent être formatées en ajoutant \G.

Essayez les exemples suivants :

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

J'espère que le blog de Chen Weiliang ( https://www.chenweiliang.com/ ) a partagé "MySQL Database Index Type/Create/Use Combination ALTER Statement Usage in MySQL", qui vous est utile.

Bienvenue à partager le lien de cet article :https://www.chenweiliang.com/cwl-496.html

Bienvenue sur la chaîne Telegram du blog de Chen Weiliang pour obtenir les dernières mises à jour !

🔔 Soyez le premier à obtenir le précieux « Guide d'utilisation de l'outil d'IA de marketing de contenu ChatGPT » dans le répertoire supérieur de la chaîne ! 🌟
📚 Ce guide contient une valeur énorme, 🌟C'est une opportunité rare, ne la manquez pas ! ⏰⌛💨
Partagez et likez si vous aimez !
Vos partages et likes sont notre motivation continue !

 

发表 评论

Votre adresse email ne sera pas publiée. 项 已 用 * 标注

到 顶部