Comment effectuer la COLONNE Postgres ADD SI ELLE N’EXISTE PAS

Introduction

Dans PostgreSQL, l’instruction ALTER TABLE peut être utilisée pour ajouter, supprimer ou modifier votre table. Si vous souhaitez ajouter une colonne à une table, il vous suffit de spécifier la clause ADD COLUMN dans l’instruction ALTER TABLE. Cependant, vous rencontrerez une erreur si vous tentez d’ajouter une colonne qui existe déjà. Il est facile d’éviter cette erreur en utilisant l’option IF NOT EXISTS avec votre clause ADD COLUMN. Cette option demande à PostgreSQL d’ajouter la nouvelle colonne uniquement si le nom de la colonne n’existe pas dans la table. Dans cet article, nous examinerons de plus près la commande Postgres ADD COLUMN IF NOT EXISTS et nous verrons quelques exemples de son utilisation.

Prérequis

Afin de tirer le meilleur parti de ce tutoriel, vous devrez vous assurer que quelques prérequis sont en place:

  • PostgreSQL doit être installé sur votre ordinateur afin que vous puissiez tester nos exemples de la commande Postgres ADD COLUMN IF NOT EXISTS.
  • Vous devriez avoir quelques connaissances de base de PostgreSQL afin de suivre les instructions fournies dans cet article.

La syntaxe Postgres SI ELLE N’EXISTE PAS

Nous allons commencer par un rapide aperçu de la syntaxe de l’option IF NOT EXISTS dans une instruction ALTER TABLE:

1
2
ALTER TABLE TABLE_NAME
AJOUTER UNE COLONNE SI ELLE N’EXISTE PAS column_name

Discutons un peu plus en détail de cette syntaxe:

  • Tout d’abord, nous spécifions le nom de la table à laquelle nous voulons ajouter une colonne.
  • Nous fournissons l’option IF NOT EXISTS après la clause ADD COLUMN, puis nous spécifions le nom de la colonne et son type de données.

L’option IF NOT EXISTS vérifie si le nom de colonne spécifié existe dans la table. Avec cette option en place, aucune erreur ne sera renvoyée si vous essayez d’ajouter une colonne qui existe déjà.

Postgres S’IL N’EXISTE PAS exemple

Avant de continuer, créons un exemple de table à utiliser dans nos exemples:

1
2
3
4
5
CRÉER des employés DE TABLE (
id CLÉ PRIMAIRE SÉRIE,
nom VARCHAR(50),
POSITION VARCHAR(50)
);

La table nommée employees est maintenant créée.

Ajouter une colonne

Maintenant, essayons d’ajouter une nouvelle colonne à notre table avec le même nom de colonne qu’une colonne existante. Nous utiliserons la déclaration suivante ALTER TABLE :

1
2
ALTER employés DE TABLE AJOUTENT le nom de COLONNE VARCHAR(50);
ERREUR: LA COLONNE « nom » DE LA relation « employés » EXISTE déjà

Cette instruction renverra une erreur car la colonne ”nom » de la table employees existe déjà. Pour éviter cette erreur, nous pouvons simplement utiliser l’option IF NOT EXISTS. Voyons à quoi ressemble notre déclaration avec cette option en place:

1
2
3
ALTER TABLE employees ADD COLUMN IF NOT EXISTS name VARCHAR(50);
REMARQUE: LA COLONNE « nom » DE la relation « employés » EXISTE déjà, en sautant
ALTER TABLE

REMARQUE: L’instruction ci-dessus n’a pas renvoyé d’erreur, mais elle a affiché un message vous avertissant qu’une colonne du même nom existe déjà.

Que pensez-vous qu’il se passera si vous essayez d’ajouter une colonne avec le même nom d’une colonne existante mais un type de données différent? Essayons et voyons:

1
2
3
ALTER TABLE employees ADD COLUMN IF NOT EXISTS name TEXT;
> AVIS: LA COLONNE « nom » DE la relation « employés » EXISTE déjà, en sautant
ALTER TABLE

La colonne ne sera toujours pas ajoutée car une colonne portant le même nom existe déjà.

Conclusion

Lorsque vous devez modifier l’une de vos tables PostgreSQL, il est facile d’ajouter, de supprimer ou de renommer une colonne à l’aide de l’instruction ALTER TABLE ; cependant, une erreur peut survenir si vous essayez d’ajouter une colonne qui existe déjà. Pour éviter toute erreur potentielle, vous pouvez utiliser l’option IF ALREADY EXISTS après la clause ADD COLUMN dans votre instruction ALTER TABLE. Dans cet article, nous avons discuté de l’instruction Postgres ADD COLUMN IF ALREADY EXISTS et avons examiné quelques exemples de son utilisation. Avec nos exemples et nos instructions étape par étape, vous pourrez ajouter des colonnes à une table sans rencontrer d’erreurs dans votre propre base de données PostgreSQL.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *