Crée un index sur une table existante.
Remarque : Pour des bases de données autres que Microsoft Access, le moteur de base de données Access ne prend pas en charge l’utilisation de l’instruction CREATE INDEX (sauf pour créer un pseudo-index sur une table liée ODBC) ou d’instructions de langage de définition de données (DDL). Utilisez plutôt les méthodes Create de DAO (Data Access Objects). Pour plus d’informations, voir la section Remarques.
Syntaxe
CREATE [ UNIQUE ] INDEX index
ON table (field [ASC|DESC][, field [ASC|DESC], ...]) [WITH { PRIMARY | DISALLOW NULL | IGNORE NULL }]L’instruction CREATE INDEX comprend les parties suivantes :
Partie |
Description |
index |
Nom de l’index à créer. |
table |
Nom de la table existante qui contiendra l’index. |
field |
Nom du ou des champs à indexer. Pour créer un index à champ unique, répertoriez le nom du champ entre parenthèses en suivant le nom de la table. Pour créer un index à plusieurs champs, répertoriez le nom de chaque champ à inclure dans l’index. Pour créer des index décroissants, utilisez le mot réservé DESC ; sinon, les index sont supposés être croissants. |
Remarques
Pour interdire la présence de valeurs en double dans les champs indexés d’enregistrements différents, utilisez le mot réservé UNIQUE.
Dans la clause WITH facultative, vous pouvez appliquer des règles de validation des données. Vous pouvez :
-
Interdire les entrées Null dans les champs indexés des nouveaux enregistrements en utilisant l’option DISALLOW NULL.
-
Empêcher que des enregistrements dont la valeur est Null dans les champs indexés soient inclus dans l’index en utilisant l’option IGNORE NULL.
-
Désigner les champs indexé en tant que clé primaire en utilisant le mot réservé PRIMARY. Cela impliquant que la clé soit unique, vous pouvez omettre le mot réservé UNIQUE.
Vous pouvez utiliser CREATE INDEX pour créer un pseudo-index sur un table liée dans un source de données ODBC, tel que Microsoft® SQL Server™, qui n’a pas encore d’index. Vous n’avez pas besoin de l’autorisation ou de l’accès au serveur distant pour créer un pseudo-index, et la base de données distante n’est pas au courant et n’est pas affectée par le pseudo-index. Vous utilisez la même syntaxe pour les tables liées et natives. La création d’un pseudo-index sur une table qui serait normalement en lecture seule peut être particulièrement utile.
Vous pouvez également utiliser l’instruction ALTER TABLE pour ajouter un index d’un seul champ ou multi-champ à une table, et l’instruction ALTER TABLE ou DROP pour supprimer un index créé avec l’instruction ALTER TABLE ou CREATE INDEX.
Remarque : N’utilisez pas le mot réservé PRIMARY lorsque vous créez un index sur une table qui possède déjà une clé primaire. Autrement, une erreur se produit.