Re: Getting lengths of variable fields
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Peter Eisentraut <peter_e@gmx.net>
Cc: Michelle Murrain <mpm@norwottuck.com>, pgsql-general@postgresql.org
Date: 2001-03-05T22:55:04Z
Lists: pgsql-general
Peter Eisentraut <peter_e@gmx.net> writes: > Michelle Murrain writes: >> Is there something I am missing? Is there a way to get the size of variable >> length types using DBI/DBD::Pg, in particular, char() and varchar()? > Normally, you'd use LENGTH or OCTET_LENGTH. If you want to get the > storage size on disk, you could add 4 to what you get as length, but this > result seems to be of dubious value, especially with TOAST (compression, > out-of-line storage). What Michelle seems to want is the declared limit on field width, not the actual width of any particular value. This info is stored in the 'atttypmod' field of pg_attribute, but I don't know whether DBD::Pg provides any handy interface to that. You might have to get down-and-dirty enough to select it directly out of pg_attribute ... regards, tom lane