From: | "Chris Faulkner" <chrisf(at)oramap(dot)com> |
---|---|
To: | "Pgsql-Sql" <pgsql-sql(at)postgresql(dot)org> |
Subject: | create new field |
Date: | 2003-10-06 16:35:11 |
Message-ID: | DGENKIKMJILAAKJGFHKFAEHPCIAA.chrisf@oramap.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Hello
I would like to change the type of a column. At the moment, it is varchar(4)
but I would like it to be int. All values in the field at the moment are
actually integer.
I tried a way I had seen in the archives - it foes along the lines of adding
a column, using update, drop the old column and rename the new one.
alter table tab add column new_col int4;
update tab set new_col = "OLD_COL";
ERROR: column "new_col" is of type integer but expression is of type
characte
r
You will need to rewrite or cast the expression
OK - so I tried casting.
template1=# update tab set new_col = "OLD_COL"::int4;
ERROR: Cannot cast type character to integer
I understand this - some tables might have characters in the varchar but how
to get around it in my case ? I know that my character field has only
integers in it ?
Thanks
Chris
From | Date | Subject | |
---|---|---|---|
Next Message | Louise Cofield | 2003-10-06 16:35:37 | Re: Multiple table join |
Previous Message | Wei Weng | 2003-10-06 16:29:31 | suggestion needed for implementation |