SQL CREATE INDEX



SQL > Manipulation de table > Create Index 

Les index nous permettent de retrouver rapidement les données contenues dans une table. Utilisons un exemple pour illustrer l’utilité des index : supposons que nous sommes intéressés à lire des informations sur la culture de piments dans un livre de jardinage. Au lieu de commencer la lecture dès le début jusqu’à parvenir à la section sur les piments, il est beaucoup plus rapide d’aller à l’index en fin de livre, repérer les pages contenant les informations au sujet des piments, puis aller directement à ces pages. Aller à l’index en premier lieu nous permet d’épargner du temps et c’est une méthode largement plus efficace pour repérer les informations dont nous avons besoin.

Le principe est le même quant à retrouver des données d’une table de bases de données. Sans index, le système de base de données balaie la table entière (ce processus est appelé 'table scan' (balayage de table)) pour trouver les informations recherchées. Avec l’index créé, le système de la base de données peut d’abord repérer dans l’index l’emplacement des données, puis aller directement à ces emplacements afin d’obtenir les données requises. C’est beaucoup plus rapide.

Par conséquent, il est plus que souhaitable de créer des index pour les tables. Un index peut couvrir une ou plusieurs colonnes. La syntaxe générale pour la création d’un index est :

CREATE INDEX "nom d'index" ON "nom de table" (nom de colonne);

Supposons que nous avons la table suivante :

Table Customer
 Nom de Colonne  Type de Données 
 First_Name  char(50) 
 Last_Name  char(50) 
 Address  char(50) 
 City  char(50) 
 Country  char(25) 
 Birth_Date  datetime 

et pour créer un index dans la colonne Last_Name, il faut saisir

CREATE INDEX IDX_CUSTOMER_LAST_NAME
ON Customer (Last_Name);

Pour créer un index dans City et Country, il faut saisir

CREATE INDEX IDX_CUSTOMER_LOCATION
ON Customer (City, Country);

Il n’y a aucune règle stricte sur les conditions de nommer un index. La méthode généralement acceptée consiste à placer un préfixe, tel que "IDX_", devant un nom d’index pour éviter toute confusion avec d’autres objets de la base de données. Une bonne idée aussi est de fournir des informations sur les tables et colonnes indexées.

Notez que la syntaxe exacte de CREATE INDEX peut différer en fonction de la base de données utilisée. Consultez votre manuel de référence de la base de données pour connaître la syntaxe précise.

SQL ALTER TABLE >>

Cette page a été mise à jour pour la dernière fois le 13/06/2022


Copyright © 2024   1keydata.com   Tous droits réservés