PostgreSQL ALTER TABLE : ajouter ou supprimer des colonnes
La commande ALTER TABLE
permet de personnaliser les tables dans PostgreSQL. Cette commande s’utilise avec une action, par exemple pour ajouter ou modifier des colonnes.
Qu’est-ce que la commande PostgreSQL ALTER TABLE
?
La commande ALTER TABLE
est utilisée dans PostgreSQL pour modifier des tables existantes. Elle peut être utilisée pour ajouter ou supprimer une colonne, ou pour la modifier selon vos besoins. De plus, PostgreSQL ALTER TABLE
est utilisé pour définir ou supprimer des restrictions sur une table dans le système de gestion de base de données (SGBD). Pour obtenir le résultat souhaité, vous devez spécifier la commande avec une action.
Profitez de votre propre serveur, avec hardware dédié, intégration Cloud, facturation à la minute et processeur Intel® Xeon® ou AMD.
Syntaxe de ALTER TABLE
Pour une compréhension de base, il est utile de jeter un coup d’œil à la syntaxe de base de ALTER TABLE
. Elle se présente comme suit :
ALTER TABLE nom_de_la_table action;
postgresqlLa commande proprement dite est donc suivie du nom de la table à laquelle vous souhaitez apporter des modifications. Ensuite, vous spécifiez la commande PostgreSQL ALTER TABLE
avec l’action souhaitée.
Pour créer une nouvelle table, utilisez la commande CREATE TABLE dans PostgreSQL.
Exemples d’utilisation de PostgreSQL ALTER TABLE
Dans les paragraphes suivants, nous allons illustrer le fonctionnement de ALTER TABLE
par des exemples pratiques. Nous allons créer un exemple de table nommée « Clients », qui contient initialement trois colonnes et trois lignes. Elle se présente comme suit :
ID | Nom | Ville |
---|---|---|
1 | Berland | Paris |
2 | Wirth | Marseille |
3 | Madiot | Lille |
On peut maintenant la personnaliser de différentes manières avec ALTER TABLE
dans PostgreSQL.
Ajouter une colonne avec PostgreSQL ADD COLUMN
Pour ajouter une colonne supplémentaire, utilisez ALTER TABLE
en combinaison avec PostgreSQL ADD COLUMN
. Cette action a deux paramètres : le nom de la colonne et le type de données de la colonne. La syntaxe est la suivante :
ALTER TABLE nom_de_la_table ADD COLUMN nom_de_la_colonne type de données;
postgresqlSi nous voulons ajouter une colonne à notre table « Clients » pour les adresses, nous utilisons PostgreSQL ADD COLUMN
comme suit :
ALTER TABLE Clients ADD COLUMN Adresse VARCHAR(255);
postgresqlLa nouvelle table étendue se présente donc comme suit :
ID | Nom | Ville | Adresse |
---|---|---|---|
1 | Berland | Paris | NULL |
2 | Wirth | Marseille | NULL |
3 | Madiot | Lille | NULL |
Supprimer des colonnes avec DROP COLUMN
De la même manière, nous pouvons supprimer une colonne d’une table existante. Pour cela, nous utilisons PostgreSQL ALTER TABLE
en combinaison avec l’action DROP COLUMN
. Le seul paramètre de cette action est le nom de la colonne. Voici la syntaxe :
ALTER TABLE nom_de_la_table DROP COLUMN nom_de_la_colonne;
postgresqlPour supprimer la colonne « Ville », nous utilisons ce code :
ALTER TABLE Clients DROP COLUMN Ville;
postgresqlLe tableau ne comporte donc plus que trois colonnes :
ID | Nom | Adresse |
---|---|---|
1 | Berlin | NULL |
2 | Wirth | NULL |
3 | Madiot | NULL |
Renommer des colonnes avec RENAME COLUMN
Nous pouvons également renommer une colonne existante, ce qui peut être une bonne alternative à la suppression ou à l’ajout de colonnes. La syntaxe de RENAME COLUMN
dans ALTER TABLE
est la suivante :
ALTER TABLE nom_de_la_table RENAME COLUMN nom_de_la_colonne TO nouveau_nom;
postgresqlIci, nous transformons la colonne « Nom » en « Nom du client » :
ALTER TABLE Clients RENAME COLUMN Nom TO Nom_du_client;
postgresqlDans notre table, seul le nom de la colonne change, comme nous le souhaitions :
ID | Nom du client | Adresse |
---|---|---|
1 | Berland | NULL |
2 | Wirth | NULL |
3 | Madiot | NULL |
Autres actions dans PostgreSQL pour ALTER TABLE
D’autres actions utiles avec ALTER TABLE
incluent la modification du type de données, la gestion des contraintes et l’ajout de valeurs par défaut. Voici les principales commandes :
Pour modifier le type de données d’une colonne :
ALTER TABLE nom_de_la_table ALTER COLUMN nom_de_la_colonne SET DATA TYPE type_de_données;
postgresqlPour spécifier qu’une colonne doit recevoir une valeur :
ALTER TABLE nom_de_la_table ALTER COLUMN nom_de_la_colonne SET NOT NULL;
postgresqlPour établir des restrictions telles que UNIQUE
ou PRIMARY KEY
pour une colonne, utilisez PostgreSQL ALTER TABLE
en combinaison avec l’action ADD CONSTRAINT
:
ALTER TABLE nom_de_la_table ADD CONSTRAINT nom_de_la_contrainte UNIQUE (nom_de_la_colonne);
postgresql