Re: How to get the size of non fixed-length field from system catalog ? - Mailing list pgsql-general

From Thomas Kellerer
Subject Re: How to get the size of non fixed-length field from system catalog ?
Date
Msg-id h0jvff$5vj$1@ger.gmane.org
Whole thread Raw
In response to How to get the size of non fixed-length field from system catalog ?  (Postgres User <postgres.developer@gmail.com>)
List pgsql-general
Postgres User wrote on 08.06.2009 23:03:
> Hi,
>
> I'm writing a small ORM tool and have written a number of queries to
> retrieve table metadata.  One piece of data that I'm having trouble
> hunting down is the size of a CHAR field.  For example, one table has
> a 'user_id' column of type CHAR(36).  But when I look at the
> pg_attribute and pg_type tables, I can't seem to find this size value
> of 36.
>
> Can anyone share the SQL that returns the size of a CHAR?  It is NOT
> the 'typlen' column.  The answer may be the 'typelem' column, but I
> can't find details on how to decode it.
>

Use the information_schema, that is easier:

SELECT character_maximum_length
FROM information_schema.columns
WHERE table_name = 'your_table'
AND column_name = 'the_char_column';

http://www.postgresql.org/docs/8.3/static/infoschema-columns.html

Thomas

pgsql-general by date:

Previous
From: Postgres User
Date:
Subject: How to get the size of non fixed-length field from system catalog ?
Next
From: "Roderick A. Anderson"
Date:
Subject: Re: Adding the host name to the PgSQL shell