On Feb 3, 2009, at 5:21 AM, Phoenix Kiula wrote:
On Mon, Jan 12, 2009 at 1:02 PM, Tom Lane <tgl@xxxxxxxxxxxxx> wrote:
.....<snip>....
regression=# update pg_attribute set atttypmod = 35+4 where
attrelid = 't1'::regclass and attname = 'f1';
UPDATE 1
regression=# \d t1
Table "public.t1"
Column | Type | Modifiers
--------+-----------------------+-----------
f1 | character varying(35) |
(Why the +4 you ask? It's historical :-()
Tom, this has worked, and a "\d TABLENAME" shows that the column is
varchar(35).
But I still have messages in my log saying:
---
ERROR: value too long for type character varying(20)
---
Why is this? There are no other varchar(20) columns in my DB at all,
no other table. Only this column used to be 20 characters and using
your command I changed it to 35. It looks alright, the column also
accepts the value, but the error is logged.
I'm confused. How to stop the error?
You don't happen to have any functions that use varchar(20) in their
arguments or for local variables? I'm not sure they'd cause the shown
error, but I expect them to.
Alban Hertroys
--
If you can't see the forest for the trees,
cut the trees and you'll see there is no forest.
!DSPAM:737,4987f368747033931215266!
--
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general