> 
> Estoy migrando un framework php que he desarrollado para
> mysql a postgresq pero no logro averiguar como obtener los
> comentarios que se ponen a un campo en una tabla. En mysql
> lo obtengo con "describe table". En postgresql he
> conseguido esa informacion con una query que en encontrado
> en san google
> 
> 
> SELECT
>                                        
> a.attname AS Field,
>                                        
> t.typname || '(' || a.atttypmod || ')' AS
> Type,
>                                        
> CASE WHEN a.attnotnull='t' THEN 'YES' ELSE
> 'NO' END as Null,
> 
> 
>                                        
> CASE WHEN r.contype='p' THEN 'PRI' ELSE
> '' END as Key,
>                                        
> (SELECT substring(pg_catalog.pg_get_expr(d.adbin,
> d.adrelid), '\'(.*)\'')
> 
> 
>                                           
> FROM pg_catalog.pg_attrdef d
>                                           
> WHERE d.adrelid = a.attrelid AND d.adnum = a.attnum AND
> a.atthasdef) AS Default,
>                                        
> '' as Extras,
> 
> 
>                                        
> '' as Comment,
>                                        
> '' as Collation,
>                                        
> '' as Privileges
>                                    
> FROM
> 
> 
>                                        
> pg_class c
>                                        
> JOIN pg_attribute a ON a.attrelid = c.oid
>                                        
> JOIN pg_type t ON a.atttypid = t.oid
>                                        
> LEFT JOIN pg_catalog.pg_constraint r ON c.oid=r.conrelid
> 
> 
>                                            
> AND r.conname = a.attname
>                                    
> WHERE
>                                        
> c.relname = '".$tabla."'
>                                        
> and a.attnum > 0
> 
> 
> 
> Pero no logro encontrar donde rayos están los
> comentarios.
> -- 
> Salu2
> 


para obtener los comentarios puedes usar unas funciones definidas en postgresql

aqui te dejo dos consultas

--Obtener el comentario de una tabla
Select
relname as tabla,
obj_description(a.oid,'pg_class')       
from pg_class as a

--Obtener el comentario de un campo
select
b.relname as tabla,
a.attname as columna,
col_description(a.attrelid, a.attnum)
from pg_attribute as a, pg_class as b
where b.oid = a.attrelid


saludos...



--
TIP 2: puedes desuscribirte de todas las listas simultáneamente
    (envía "unregister TuDirecciónDeCorreo" a majord...@postgresql.org)

Responder a