Partie I
SQL de base
68
© Éditions Eyrolles
Modifications structurelles ( ALTER TABLE )
Considérons la table suivante que nous allons faire évoluer :
Ajout de colonnes
La directive ADD de l’instruction ALTER TABLE permet d’ajouter une nouvelle colonne à une
table. Cette colonne est initialisée à NULL pour tous les enregistrements (à moins de spécifier
une contrainte DEFAULT , auquel cas tous les enregistrements de la table sont mis à jour avec
une valeur non nulle).
Il est possible d’ajouter une colonne en ligne NOT NULL seulement si la table est vide ou si une
contrainte DEFAULT est définie sur la nouvelle colonne (dans le cas inverse, il faudra utiliser
MODIFY à la place de ADD ).
Le script suivant ajoute trois colonnes à la table Pilote . La première instruction insère la
colonne nbHVol en l’initialisant à NULL pour tous les pilotes (ici il n’en existe qu’une seule).
La deuxième commande ajoute deux colonnes initialisées à une valeur non nulle. La colonne
ville ne sera jamais nulle.
ALTER TABLE Pilote ADD (nbHVol DECIMAL(7,2));
ALTER TABLE Pilote
ADD (compa VARCHAR(4) DEFAULT 'AF',
ville VARCHAR(30) DEFAULT 'Paris' NOT NULL);
La table est désormais la suivante :
Figure 3-1 Table à modifier
CREATE TABLE Pilote
(brevet VARCHAR(4), nom VARCHAR(20));
INSERT INTO Pilote
VALUES ('PL -1', 'Agnès Labat');
Pilote
brevet
nom
PL-1
Agnès Labat
Figure 3-2 Table après l’ajout de colonnes
Web
Pilote
brevet
nom
nbHVol
compa
ville
PL-1
Agnès Labat
AF
Paris
Précédent

- 90/418

Suivant