From: | Jaime Casanova <systemguards(at)yahoo(dot)com> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: funciones |
Date: | 2004-11-24 04:44:21 |
Message-ID: | 20041124044421.20749.qmail@web50003.mail.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
--- Roberto Cesar Najera <rob(at)dcaa(dot)unam(dot)mx> escribió:
> Ups, pero eso es mucho choro ..... estaba pensando
> en una funcion
...
> pero en principio tengo problemas con el tipo de
> dato que regresa
>
ingresas al programa llamado psql usando la opcion -E
en tu instalacion de postgresql.
-E
--echo-hidden
Echo the actual queries generated by \d and other
backslash commands.
You can use this if you wish to include similar
functionality into your own programs. This is
equivalent to setting the variable ECHO_HIDDEN from
within psql.
en mi maquina usando pgsql v8.0.0beta4 me da estos
selects.
deberias hacerlo en tu maquina si tienes otra version
de pgsql porque la version 8 incluye tablespaces (¿y
catalogos?, Alvaro) que no habia en otras versiones
asi que no vas a poder usar estos selects en tu
programa.
SELECT c.oid, n.nspname, c.relname
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 ~ '^rec_t_transaccion$'
ORDER BY 2, 3;
SELECT relhasindex, relkind, relchecks, reltriggers,
relhasrules,
relhasoids , reltablespace
FROM pg_catalog.pg_class
WHERE oid = '243593';
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
), a.attnotnull, a.attnum
FROM pg_catalog.pg_attribute a
WHERE a.attrelid = '243593' AND a.attnum > 0 AND NOT
a.attisdropped
ORDER BY a.attnum;
SELECT c2.relname, i.indisprimary, i.indisunique,
i.indisclustered,
pg_catalog.pg_get_indexdef(i.indexrelid, 0,
true)
FROM pg_catalog.pg_class c, pg_catalog.pg_class c2,
pg_catalog.pg_index i
WHERE c.oid = '243593'
AND c.oid = i.indrelid
AND i.indexrelid = c2.oid
ORDER BY i.indisprimary DESC, i.indisunique DESC,
c2.relname;
SELECT pg_catalog.pg_get_constraintdef(r.oid, true),
conname
FROM pg_catalog.pg_constraint r
WHERE r.conrelid = '243593'
AND r.contype = 'c';
SELECT t.tgname, pg_catalog.pg_get_triggerdef(t.oid)
FROM pg_catalog.pg_trigger t
WHERE t.tgrelid = '243593'
AND (not tgisconstraint OR NOT EXISTS (SELECT 1
FROM pg_catalog.pg_depend d JOIN
pg_catalog.pg_constraint c ON (d.refclassid =
c.tableoid AND d.refobjid = c.oid) WHERE d.classid
= t.tableoid AND d.objid = t.oid AND d.deptype = 'i'
AND c.contype = 'f'));
SELECT conname, pg_catalog.pg_get_constraintdef(oid,
true) as condef
FROM pg_catalog.pg_constraint r
WHERE r.conrelid = '243593' AND r.contype = 'f';
SELECT c.relname
FROM pg_catalog.pg_class c, pg_catalog.pg_inherits i
WHERE c.oid=i.inhparent
AND i.inhrelid = '243593'
ORDER BY inhseqno ASC;
Ahora, me parece por tu pregunta (corrigeme si me
equivoco) que no te has tomado la molestia de leer los
manuales ni el FAQ. la pregunta era razonable (¿como
obtener el mismo resultado de \d?) pero al parecer no
sabes lo que es el psql o si lo sabes te dio pereza
seguir el sencillo consejo de hacer psql -E en tu
maquina y copiar los selects, aparte de que no sabes
las sintaxis de los lenguajes como el plpgsql.
> y la otra es que no se si se pueda hacer eso
> RETURN \d $1
respondiendo tu ultima pregunta no puedes hacer eso
Atentamente,
Jaime Casanova
_________________________________________________________
Do You Yahoo!?
Información de Estados Unidos y América Latina, en Yahoo! Noticias.
Visítanos en http://noticias.espanol.yahoo.com
From | Date | Subject | |
---|---|---|---|
Next Message | Jaime Casanova | 2004-11-24 04:54:55 | Re: Nuevamente con la Orientacion a Objetos |
Previous Message | Manuel Sugawara | 2004-11-23 23:17:32 | Re: Replica / Sincronizacion |