Modifie la conception d’une table après la création de celle-ci avec l’instruction CREATE TABLE.
Remarque : Le moteur de base de données Access ne prend pas en charge l’utilisation de l’instruction ALTER TABLE ou d’instructions en langage de définition de données (DDL) avec des bases de données autres que Microsoft Access. Utilisez plutôt les méthodes Create de DAO (Data Access Objects).
Syntaxe
ALTER TABLE table {ADD {COLUMN type[(size)] [NOT NULL] [ CONSTRAINT index] |
TYPE de champ ALTER COLUMN[(size)] | CONSTRAINT multifieldindex} | DROP {COLUMN field I CONSTRAINT indexname} }L’instruction ALTER TABLE comprend les parties suivantes :
Partie |
Description |
table |
Nom de la table à modifier. |
field |
Nom du champ à ajouter ou à supprimer dans la table. Ou nom du champ à modifier dans la table. |
type |
Type de données de field. |
size |
Taille du champ en caractères (champs de types Texte et Binaire uniquement). |
index |
Index pour field. |
multifieldindex |
Définition d’un index multi-champ à ajouter à table. |
indexname |
Nom de l’index multi-champ à supprimer. |
Remarques
L’instruction ALTER TABLE permet de modifier une table existante de plusieurs façons. Vous pouvez :
-
Utilisez l’instruction ADD COLUMN pour ajouter un champ à la table. Vous spécifiez le nom du champ, le type de données et (pour les champs de type Texte et Binaire) une taille facultative. Par exemple, l’instruction suivante ajoute un champ de texte de 25 caractères appelé Notes à la table Employees (Employés) :
ALTER TABLE Employees ADD COLUMN Notes TEXT(25)
Vous pouvez également définir un index sur ce champ.
Si vous spécifiez NOT NULL pour un champ, de nouveaux enregistrements sont requis pour insérer des données valides dans ce champ.
-
Utilisez l’instruction ALTER COLUMN pour modifier le type de données d’un champ existant. Vous spécifiez le nom du champ, le nouveau type de données et une taille facultative des champs de type Texte et Binaire. Par exemple, l’instruction suivante modifie le type de données d’un champ de la table Employees (Employés) nommé ZipCode (à l’origine défini comme Entier) en un champ de type Texte de 10 caractères :
ALTER TABLE Employees ALTER COLUMN ZipCode TEXT(10)
-
Utilisez l’instruction ADD CONSTRAINT pour ajouter un index multi-champ.
-
Utilisez l’instruction DROP COLUMN pour supprimer un champ. Vous spécifiez uniquement le nom du champ.
-
Utilisez l’instruction DROP CONSTRAINT pour supprimer un index multi-champ. Vous spécifiez uniquement le nom d’index après le mot réservé CONSTRAINT.
Remarques :
-
Vous ne pouvez pas ajouter ou supprimer plus d’un champ ou index à la fois.
-
Vous pouvez utiliser l’instruction CREATE INDEX 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.
-
Vous pouvez utiliser l’instruction NON NULL sur un champ unique ou à l’intérieur d’une clause CONSTRAINT nommée qui s’applique à une instruction CONSTRAINT nommée portant sur un ou plusieurs champs. Toutefois, vous ne pouvez appliquer la restriction NON NULL qu’une seule fois à un champ. Une tentative d’appliquer cette restriction plusieurs fois génère une erreur d’exécution.
-