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

From: Thomas Kellerer <spam_eater(at)gmx(dot)net>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: How to get the size of non fixed-length field from system catalog ?
Date: 2009-06-08 21:23:01
Message-ID: h0jvff$5vj$1@ger.gmane.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: 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

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Roderick A. Anderson 2009-06-08 22:11:55 Re: Adding the host name to the PgSQL shell
Previous Message Postgres User 2009-06-08 21:03:17 How to get the size of non fixed-length field from system catalog ?