SQL Server : comment ajouter une colonne avec une valeur par défaut à une table existante
Avec SQL Server, il est possible de choisir une valeur par défaut pour une colonne quand on crée une table. Voici comment faire.
En utilisant le système de gestion de base de données SQL Server, il est possible de choisir une valeur par défaut pour une colonne lorsque l'on crée une table. Si la table a déjà été créée, il existe une méthode pour ajouter une colonne ayant une valeur par défaut.
La commande ALTER TABLE est utilisée pour modifier les informations relatives à la table. Le mot-clé ADD permet d'y ajouter des colonnes supplémentaires. Il faut préciser le nom de la colonne et son type. Pour préciser une valeur par défaut, il faut utiliser la clause CONSTRAINT (suivi du nom de la contrainte) qui ajoute une nouvelle contrainte à la colonne, avec le mot-clé DEFAULT puis la valeur par défaut.
ALTER TABLE ma_table ADD ma_nouvelle_colonne int CONSTRAINT valeur_par_defaut DEFAULT 0
Par défaut, les enregistrements existants auront comme valeur pour cette nouvelle colonne NULL. Il est possible de modifier ce comportement. Si vous voulez que la valeur NULL soit interdite pour la colonne, il faut ajouter le mot-clé NOT NULL dans le type de la colonne.
ALTER TABLE ma_table ADD ma_nouvelle_colonne int NOT NULL CONSTRAINT valeur_par_defaut DEFAULT 0
Si par contre vous souhaitez que la valeur NULL soit possible, mais que les enregistrements existants soient mis à jour avec la valeur par défaut, il faut ajouter le mot-clé WITH VALUES après la valeur par défaut.
ALTER TABLE ma_table ADD ma_nouvelle_colonne int CONSTRAINT valeur_par_defaut DEFAULT 0 WITH VALUES