Database
 sql >> Base de données >  >> RDS >> Database

Ajouter une colonne à une table en SQL

En SQL, vous pouvez utiliser le ALTER TABLE instruction pour ajouter une ou plusieurs colonnes à une table existante.

Pour cela, utilisez le ADD clause, suivie de la définition de la colonne. Séparez plusieurs colonnes par une virgule.

Spécifiez uniquement ADD une fois (c'est-à-dire qu'il n'est pas nécessaire de le spécifier pour chaque colonne).

Ajouter une colonne

Voici un exemple de base où j'ajoute une colonne à une table existante.

ALTER TABLE Test ADD 
  column_2 varchar(50) NOT NULL;

Dans ce cas, j'ai ajouté une colonne appelée column_2 à la table appelée Test .

Cela aurait pu facilement être fait sur une seule ligne. Je n'utilise que deux lignes ici pour une meilleure lisibilité.

Juste pour être clair, le revoilà, mais cette fois je crée le tableau avant de le modifier.

CREATE TABLE Test 
  (
      column_1 int IDENTITY NOT NULL PRIMARY KEY
  );
ALTER TABLE Test ADD 
  column_2 varchar(50) NOT NULL;

Notez que les exemples de cette page ont été réalisés à l'aide de SQL Server. En fonction de votre SGBD, vous devrez peut-être modifier certains détails des définitions de colonne.

Par exemple IDENTITY est la version de SQL Server de ce qui est parfois appelé AUTO_INCREMENT dans d'autres SGBD (comme MySQL). Si vous utilisez SQLite, voici comment créer une colonne auto-incrémentée dans SQLite.

Ajouter plusieurs colonnes

Voici comment ajouter deux colonnes ou plus.

ALTER TABLE Test ADD 
  column_3 int NULL, 
  column_4 int NULL;

Comme mentionné, vous séparez simplement chaque colonne par une virgule.

Ajouter des contraintes

Vous pouvez également ajouter des contraintes à toutes les colonnes que vous ajoutez à une table existante. Voici un exemple.

ALTER TABLE Test ADD 
  column_5 int NOT NULL
  CONSTRAINT u_column_5 UNIQUE;

Cet exemple ajoute une colonne appelée column_5 avec un UNIQUE contrainte appelée u_column_5 .

Évidemment, le code réel que vous utiliserez dépendra du nom de la colonne et de la contrainte que vous ajoutez, ainsi que de son type. Par exemple, vous pouvez ajouter une contrainte de clé primaire, une contrainte de clé étrangère, une contrainte CHECK, etc.

De plus, ce n'est pas la seule façon d'ajouter des contraintes à une colonne. Si la colonne existe déjà, vous pouvez utiliser ADD CONSTRAINT pour ajouter une contrainte sur la colonne existante.

L'ajout de la contrainte lorsque vous ajoutez la colonne vous évite simplement d'avoir à l'ajouter ultérieurement.