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.

Serveurs dédiés
Performance et innovation

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;
postgresql

La 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.

Conseil

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;
postgresql

Si 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);
postgresql

La 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;
postgresql

Pour supprimer la colonne « Ville », nous utilisons ce code :

ALTER TABLE Clients DROP COLUMN Ville;
postgresql

Le 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;
postgresql

Ici, nous transformons la colonne « Nom » en « Nom du client » :

ALTER TABLE Clients RENAME COLUMN Nom TO Nom_du_client;
postgresql

Dans 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;
postgresql

Pour spécifier qu’une colonne doit recevoir une valeur :

ALTER TABLE nom_de_la_table ALTER COLUMN nom_de_la_colonne SET NOT NULL;
postgresql

Pour é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
Cet article vous a-t-il été utile ?
Aller au menu principal