Après de longues recherches voici ce que j'ai trouvé :
Il n'y a en effet qu'une seule colonne qui peut être confirmée en utilisant psql. Cependant en utilisant la commande pg_dump -st names <databasename>
de bash j'ai remarqué qu'il y avait 2 séquences définies associées à la colonne id :public.names_id_seq
et public.names_id_seq1
.
Cela peut également être confirmé en exécutant SELECT c.relname FROM pg_class c WHERE c.relkind = 'S';
de psql où les deux séquences apparaissent.
Si on essaie de supprimer public.names_id_seq1
on obtient l'erreur ERROR: cannot drop sequence apis_id_seq1 because column id of table apis requires it
.
La solution est de supprimer la première séquence avec DROP SEQUENCE names_id_seq;
Après avoir actualisé pgAdmin4, la deuxième colonne avait disparu.
TL;DR
-
Exécutez
SELECT c.relname FROM pg_class c WHERE c.relkind = 'S';
et identifier les séquences en double (c'est-à-dire celles où il y a une version avec et une sans 1 à la fin) -
Supprimez la séquence superflue avec
DROP SEQUENCE <sequenceName_seq>;
(seul celui sans 1 à la fin peut être supprimé) -
Actualiser pgAdmin4