View Single Post

   
  #5 (permalink)  
Old 04-16-2008, 01:00 AM
Tom Lane
 
Posts: n/a
Default Re: Array Char/VarChar Size

Kris Jurka <books@ejurka.com> writes:
> Multi-dimensional array information is not stored. Every array type may
> be any number of dimensions. The precision information is not available
> in the information_schema, but it is available in the system catalog
> tables. See pg_attribute.atttypmod, but it does require some decoding.


Rather than embedding knowledge of typmod encoding in client-side code,
may I suggest using the format_type function? For example

select format_type(atttypid, atttypmod) from pg_attribute where
attrelid = 'my_table'::regclass and attname = 'my_column';

This will give you back something reasonably standardized, like
"character varying(42)[]". You'll still need a bit of logic to
extract what you want, but it seems much less likely to break.

regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
choose an index scan if your joining column's datatypes do not
match

Reply With Quote