Re: Descripcion de un tabla

From: Juan Pablo GO <mozstyle2002(at)gmx(dot)net>
To: Miguel Higuera <miguelstratoss(at)gmail(dot)com>
Cc: WILLIAM PARRA <wilparra(at)yahoo(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Descripcion de un tabla
Date: 2005-06-17 15:12:53
Message-ID: 42B2E875.2060902@gmx.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola Miguel: Con esto seguro obtienes lo que buscas. mitabla es el
nombre de tu tabla y oid_mi_tabla es el nro que te entrega la primera
sql (Obtener el ID de la tabla)

// Obtenemos el ID de la tabla (mitabla)
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 ~ '^mitabla$'
ORDER BY 2, 3;

// Indices
SELECT relhasindex, relkind, relchecks, reltriggers, relhasrules,
relhasoids , reltablespace
FROM pg_catalog.pg_class WHERE oid = 'oid_de_mitabla'

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 = 'oid_de_mitabla' AND c.oid = i.indrelid AND i.indexrelid =
c2.oid
ORDER BY i.indisprimary DESC, i.indisunique DESC, c2.relname

// Campos (columnas)
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 = 'oid_de_mitabla' AND a.attnum > 0 AND NOT a.attisdropped
ORDER BY a.attnum

// Triggers
SELECT t.tgname, pg_catalog.pg_get_triggerdef(t.oid)
FROM pg_catalog.pg_trigger t
WHERE t.tgrelid = 'oid_de_mitabla' 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'))

// Integridad referencial
SELECT conname,
pg_catalog.pg_get_constraintdef(oid, true) as condef
FROM pg_catalog.pg_constraint r
WHERE r.conrelid = 'oid_de_mitabla' AND r.contype = 'f'

// herencia
SELECT c.relname FROM pg_catalog.pg_class c, pg_catalog.pg_inherits i
WHERE c.oid=i.inhparent AND i.inhrelid = 'oid_de_mitabla' ORDER BY
inhseqno ASC

Salu2
Juan Pablo GO

Miguel Higuera wrote:

> Hola señor
> WILLIAM
>
> Es muy grato encontrarme con alguien de mi aprecio en la lista...
>
> he recibido 2 respuestas a mi pregunta sin enbargo lo que deseo saber
> es como hacen los de Aqua Data Studio y PgAdmin para extraer esta
> informacion del postgres y mostrarla por pantalla.
>
> Hasta pronto
>
> El día 17/06/05, *WILLIAM PARRA* <wilparra(at)yahoo(dot)com
> <mailto:wilparra(at)yahoo(dot)com>> escribió:
>
> Buenos días querido amigo Miguel.
>
> El describe de una tabla en Postgresql sobre Linux se ejecuta con
> el comando
> \d nombretabla
> Si esta usando una erramienta sobre plataforma win como Aqua Data
> Studio (Se lo recomiendo). Use el comando ctrl+d, habiendo
> seleccionado previemante el nombre de la tabla.
>
> Saludos
>
> */Miguel Higuera <miguelstratoss(at)gmail(dot)com
> <mailto:miguelstratoss(at)gmail(dot)com>>/* escribió:
>
> Hola a toda la lista
>
> Ando en busca de una instrucción que me muestre las
> características de una tabla, algo asi como el "desc" en
> oracle o el "describe" en MySql.
>
> Gracias
>
>
>
> __________________________________________________
> Correo Yahoo!
> Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
> Regístrate ya - http://correo.espanol.yahoo.com/
>
>

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Mario Soto Cordones - Venezuela 2005-06-17 15:33:55 Re: ERROR: SELECT query has no destination for result data
Previous Message Sebastián Villalba 2005-06-17 14:39:30 Re: ERROR: SELECT query has no destination for result data