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 21/04/2011 09:53:44

mich30
Membre

copie de table --> copier les comment on column

Bonjour,
lors d'une copie de table
create table table1 as SELECT * FROM table2

j'aimerez copier les commentaires
coment fait t'on merci !

Hors ligne

#2 21/04/2011 10:22:50

gleu
Administrateur

Re : copie de table --> copier les comment on column

On le fait manuellement, un SELECT ne ramène pas les commentaires au CREATE TABLE.


Guillaume.

Hors ligne

#3 21/04/2011 10:23:29

kenrio
Membre

Re : copie de table --> copier les comment on column

Bonjour,

un pg_dump de la table ça n'irait pas ? c'est un chouilla plus long mais tu auras les comments de table.

Hors ligne

#4 21/04/2011 10:24:44

mich30
Membre

Re : copie de table --> copier les comment on column

pg_dump non mais dans les tables systemes je peux pas recuperer les comments on collumn
si ou dans quelle table systeme ?
merci

Hors ligne

#5 21/04/2011 10:25:09

Marc Cousin
Membre

Re : copie de table --> copier les comment on column

Par contre, on peut créer table 2 à l'identique de table1, incluant les commentaires, avec un create table like… c'est expliqué dans la doc: http://docs.postgresql.fr/9.0/sql-createtable.html

Il suffit alors d'ensuite insérer les enregistrements dedans.

Dernière modification par Marc Cousin (21/04/2011 10:25:28)


Marc.

Hors ligne

#6 21/04/2011 10:31:20

gleu
Administrateur

Re : copie de table --> copier les comment on column

Il s'agit de la table système pg_description.


Guillaume.

Hors ligne

#7 11/02/2013 18:20:21

mich30
Membre

Re : copie de table --> copier les comment on column

je n'arrive pas a recuperer le nom de la colonne dans cette requete
merci de votre aide

select * from pg_description
join pg_class on pg_description.objoid = pg_class.oid
join pg_namespace on pg_class.relnamespace = pg_namespace.oid

where relname = 'paca' and nspname='msaw'

Hors ligne

#8 11/02/2013 18:57:26

rjuju
Administrateur

Re : copie de table --> copier les comment on column

Cette requête récupèrera la description de la table.

Pour avoir la description des colonnes :

SELECT a.attname,  col_description(a.attrelid, a.attnum)
FROM pg_class c
JOIN pg_attribute a ON a.attrelid = c.oid
JOIN pg_namespace n ON c.relnamespace = n.oid
WHERE relname = 'paca' and nspname = 'msaw'
AND attnum > 0
ORDER BY a.attnum;

Hors ligne

#9 12/02/2013 11:28:06

mich30
Membre

Re : copie de table --> copier les comment on column

voiici la requete finale
SELECT a.attname,  y.description
FROM pg_class c
JOIN pg_attribute a ON a.attrelid = c.oid
JOIN pg_namespace n ON c.relnamespace = n.oid
join pg_description y ON y.objoid=a.attrelid
WHERE relname = 'co' and nspname = 'msaw'
AND attnum > 0
and attnum = objsubid
ORDER BY a.attnum;

merci

Dernière modification par mich30 (12/02/2013 11:28:24)

Hors ligne

Pied de page des forums