Bonjour
Petite question
J'aimerais savoir si il existe une vue système qui permettrait d'avoir le même résultat que la commande
D'avance merci pour votre réponseCode:\d nom de table
Version imprimable
Bonjour
Petite question
J'aimerais savoir si il existe une vue système qui permettrait d'avoir le même résultat que la commande
D'avance merci pour votre réponseCode:\d nom de table
Quand psql est lancé avec l'option -E, il affiche automatiquement les requêtes formant le résultat de commandes comme \d, donc on peut s'en inspirer pour faire la même chose.
Egalement une autre option est d'utiliser les vues présentes dans le schéma information_schema, qui est fait justement pour ça.
Bonjour,
La vue pg_attribute du catalogue postgres (qu'il faut joindre à la vue pg_class pour filtrer sur le nom de la table).
Ou alors la vue columns du catalogue ANSI (information_schema).
ced
Bonjour
Merci pour vos réponses.
Sinon, l'option -E c'est super :ccool:. Je dormirais moins bête cette nuit.
Complément d'information du 100611
Pour ceux que cela intéresse.
A partir des scripts renvoyés par la commande -E
J'ai pu généré celle-ci
Il suffit de mettre le nom de table et cela sort ce résultatCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 SELECT a.attname, pg_catalog.format_type(a.atttypid, a.atttypmod), (SELECT substring(d.adsrc for 128) FROM pg_catalog.pg_attrdef d WHERE d.adrelid = a.attrelid AND d.adnum = a.attnum AND a.atthasdef) FROM pg_catalog.pg_attribute a WHERE a.attrelid in (SELECT c.oid FROM pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace WHERE pg_catalog.pg_table_is_visible(c.oid) AND c.relname ~ '^$nom_de_table$') AND a.attnum > 0 AND NOT a.attisdropped ORDER BY a.attnum
Encore merci pour votre aideCode:
1
2
3
4
5
6
7
8
9
10
11
12 attname | format_type | ?column? ----------+-----------------------+---------- id_user | smallint | id_dom | smallint | login | character varying(20) | password | character varying(32) | mail | character varying(60) | nom | character varying(40) | prenom | character varying(40) | entite | character varying(40) | droit | smallint | valide | smallint |
Loïc