A essayer
Jean-Paul Argudo/ = 30 Mai, 2007 - 11:43
Bonjour,
En temps normal pour faire cela, on utilise pg_dump --schema-only
pour ne récupérer que le script SQL de création de la base.
Maintenant, je ne suis pas certain de bien comprendre votre question, aussi je vous propose cette requĂȘte SQL Ă essayer, qui extrait les informations sur les tables:
SELECT
foo.relname as table,
a.attname as colonne,
pg_catalog.format_type(a.atttypid, a.atttypmod) as type,
(SELECT substring(pg_catalog.pg_get_expr(d.adbin, d.adrelid) for 128)
FROM pg_catalog.pg_attrdef d
WHERE d.adrelid = a.attrelid AND d.adnum = a.attnum AND a.atthasdef)
as valeur_par_defaut,
a.attnotnull as null_possible,
a.attnum as ordre
FROM pg_catalog.pg_attribute a,
(SELECT
c.oid as id,
c.relname as relname
FROM pg_catalog.pg_class c
LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace
WHERE c.relkind IN ('r','')
AND n.nspname NOT IN ('pg_catalog', 'pg_toast')
AND pg_catalog.pg_table_is_visible(c.oid)) foo
WHERE a.attrelid = foo.id
AND a.attnum > 0 AND NOT a.attisdropped
ORDER BY foo.relname, a.attnum;
Pouvez-vous l'essayer et nous faire un retour? merci!
--
Jean-Paul ARGUDO
http://dalibo.com | http://dalibo.org
[ Vous devez
vous connecter pour poster des commentaires ]
Essai réussi
Jnore/ = 30 Mai, 2007 - 17:54
Merci pour cette requete.
Elle est fonctionnelle.
Je sais pour pg_dump, mais j'aime bien comprendre en profondeur et rĂ©aliser certaines choses moi-mĂȘme.
Autre chose, sur cette requete j'ai toutes les infos pour le schĂ©ma 'public'...Qu'en est-il si je veux ces mĂȘme infos sur d'autres shĂ©ma. J'en ai en tout une dizaine.
Merci.
[ Vous devez
vous connecter pour poster des commentaires ]