Comprendre les types d'index MySQL : PRIMARY, UNIQUE, INDEX et FULLTEXT
MySQL fournit plusieurs types d'index qui améliorent les performances de la base de données. Cet article explique les principales différences entre les quatre index couramment utilisés : PRIMARY, UNIQUE, INDEX et FULLTEXT.
Index PRIMARY
Semblable à un index UNIQUE, un index PRIMARY garantit l'unicité de tous. lignes de l'index. Cependant, il présente les caractéristiques uniques suivantes :
- Il ne peut y avoir qu'un seul index PRIMARY par table.
- Il est généralement nommé « PRIMARY » et fournit un moyen principal d'identification des lignes.
- Il doit figurer sur le plus petit nombre de colonnes définissant une ligne de manière unique.
- Certains systèmes de bases de données stockent les données des tables dans le Structure B-tree de l'index PRIMARY.
Index UNIQUE
Un index UNIQUE applique le caractère unique des lignes dans les colonnes spécifiées. Il :
- Empêche les valeurs non NULL identiques dans plusieurs lignes.
- Autorise les valeurs NULL, permettant potentiellement à plusieurs lignes avec des NULL d'être identiques.
- Peut être utilisé pour les restrictions de données en empêchant les enregistrements en double.
INDEX (Non unique)
Un type INDEX ou KEY de base fait référence à un index non unique. Il :
- Autorise des valeurs non distinctes dans l'index.
- N'applique aucune contrainte de données.
- Est utilisé uniquement pour un accès et une récupération plus rapides des données.
Index FULLTEXT
Contrairement aux types précédents, un FULLTEXT index est spécialisé dans la fonctionnalité de recherche en texte intégral :
- Indexe le contenu en texte intégral des colonnes, telles que les chaînes.
- Facilite une recherche efficace à l'aide de la clause MATCH() / AGAINST() .
- Ne suit pas les mêmes règles d'ordre des colonnes que les autres index types.
Similarités
Malgré leurs différences, tous ces types d'index partagent les caractéristiques suivantes :
- Peut contenir plusieurs colonnes.
- Exiger que l'ordre des colonnes corresponde aux critères de requête, en commençant par la colonne la plus à gauche.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!