Re: Convertir columnas a otro tipo

From: "Calabaza Calabaza" <calalinux(at)gmail(dot)com>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Convertir columnas a otro tipo
Date: 2008-03-19 16:26:03
Message-ID: 958993320803190926j4188ed17l4a2e2a91040b2503@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El 19/03/08, Edwin Quijada <listas_quijada(at)hotmail(dot)com> escribió:
>
> Estoy tratando de convertir una columna a otro tipo de datos y estoy haciedno esto
>
> ALTER TABLE public.calls ALTER COLUMN f_phone TYPE BIGINT;
> pero consigo este error:
>
> ERROR: column "f_phone" cannot be cast to type "pg_catalog.int8"
> SQL state: 42804
>
> EL campo f_phone es varchar y lo quiero convertir a bigint no se puede hacer esta conversion o tendre q exportar y volver a crear el campo?

Un campo varchar no puede ser convertido directamente, debes primero
castearlo a text y luego a bigint.

Porque no pruebas a crear una columna como quieres y luego haces un
update con los datos de la otra columna.
algo así como (ten en cuenta que f_phone1 es la nueva columna con tu
nuevo formato:

update calls set f_phone1 = (calls.f_phone)::text::int8;

No probe este update porque no tengo la bd cerca, pero ya es una idea,
espero que te sirva.
--
§~^Calabaza^~§ from Villa Elisa, Paraguay
----------------
A hendu hína: SKYLARK - White Warrior
http://foxytunes.com/artist/skylark/track/white+warrior

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alejandro Rivadeneira 2008-03-20 00:07:15 Rehaciendo Postgresql.cl
Previous Message Marco Vinicio Jimenez Rojas 2008-03-19 16:19:07 Re: Convertir columnas a otro tipo