PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 12/08/2020 19:44:02

Kynoo
Membre

Tester l'existence d'une colonne dans une table

Bonjour,

Etant néophyte, je souhaiterais savoir comment tester la présence d'une colonne dans une table et la renommer si elle existe.

Merci pour votre aide.

Hors ligne

#2 13/08/2020 13:25:08

oles67
Membre

Re : Tester l'existence d'une colonne dans une table

Il y a peut-être mieux, mais j'utilise ça :

select count(*) from (
select
    a.schemaname || '.' || a.relname as "tablename",
    b.attname as "columnname"
from pg_stat_user_tables a, pg_attribute b
where a.relid = b.attrelid
    and a.relname like 'Nom de la table'
    and b.attname like 'Nom de la colonne'
order by a.schemaname asc
) as ttable


Si le nom existe dans la table spécifié, ça retourne 1.

A mettre dans un IF then....pour gérer la creation

Dernière modification par oles67 (13/08/2020 14:06:32)

Hors ligne

#3 13/08/2020 16:56:12

Kynoo
Membre

Re : Tester l'existence d'une colonne dans une table

Merci beaucoup wink

Hors ligne

Pied de page des forums