From: | Bill Moran <wmoran(at)potentialtech(dot)com> |
---|---|
To: | Carlos Mennens <carlos(dot)mennens(at)gmail(dot)com> |
Cc: | PostgreSQL <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Unable To Change Data Type |
Date: | 2011-06-10 17:57:42 |
Message-ID: | 20110610135742.8760a6a5.wmoran@potentialtech.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
In response to Carlos Mennens <carlos(dot)mennens(at)gmail(dot)com>:
> For some reason I'm unable to change a column's TYPE from VARCHAR(20)
> to INTERGER or SMALLINT. I'm required to note the manufactures color
> code (value = 198) in the table data but keep getting this error and I
> don't understand why:
>
> The error I'm recieving is:
>
> ERROR: column "color" cannot be cast to type integer
>
> The table is defined as such:
>
> pearl=# \d
> Table "public.reference"
> Column | Type | Modifiers
> --------+-----------------------+--------------------------------------------------------
> id | integer | not null default
> nextval('reference_seq_id'::regclass)
> type | character varying(20) | not null
> size | smallint | not null
> color | character varying(20) | not null
> serial | integer |
> Indexes:
> "reference_pkey" PRIMARY KEY, btree (id)
> "reference_serial_key" UNIQUE, btree (serial)
>
> The data in the database appears as such:
>
> pearl=# SELECT id, color FROM reference ORDER BY id;
> id | color
> ----+-------
> 1 | 198
> 2 | 198
> 3 | 198
> 4 | 198
> 5 | 198
> 6 | 198
> (6 rows)
>
> Is this not possible to change the data type from VARCHAR to INTERGER
> or something numeric since only manufacturer color codes will be
> stored?
I don't think ALTER COLUMN TYPE will implicitly convert from varchar
to INT.
Try:
ALTER TABLE reference
ALTER COLUMN color
TYPE INT
USING CAST(color AS INT);
--
Bill Moran
http://www.potentialtech.com
http://people.collaborativefusion.com/~wmoran/
From | Date | Subject | |
---|---|---|---|
Next Message | Andreas Kretschmer | 2011-06-10 18:01:00 | Re: Unable To Change Data Type |
Previous Message | Carlos Mennens | 2011-06-10 17:47:26 | Unable To Change Data Type |