Re: alter column to inet get error.

Поиск
Список
Период
Сортировка
От Steve Clark
Тема Re: alter column to inet get error.
Дата
Msg-id 4C81082C.3030305@netwolves.com
обсуждение исходный текст
Ответ на Re: alter column to inet get error.  ("A. Kretschmer" <andreas.kretschmer@schollglas.com>)
Ответы Re: alter column to inet get error.  ("A. Kretschmer" <andreas.kretschmer@schollglas.com>)
Список pgsql-general
On 09/03/2010 09:38 AM, A. Kretschmer wrote:
> In response to Steve Clark :
>> Hello List,
>>
>> I want to change some columns in a database
>> that were originally created as char varying to
>> inet.
>>
>> When I try I get an error. Is there anyway to work
>> around this?
>>
>> See below for table definition.
>>
>>                  Table "public.kernel_gre"
>>       Column      |         Type          |   Modifiers
>> -----------------+-----------------------+---------------
>>   interface       | character varying(15) | not null
>>   source_ip       | character varying(16) |
>>   dest_ip         | character varying(16) |
>>   physical_ip     | character varying(16) |
>>   status          | boolean               | default false
>>   physical_src_ip | character varying(16) |
>>   tunnel_netmask  | character varying(16) |
>>   key             | character varying(32) |
>>   state           | boolean               | default false
>>   broadcast       | boolean               | default false
>>
>> alter TABLE kernel_gre ALTER COLUMN  source_ip TYPE inet;
>> ERROR:  column "source_ip" cannot be cast to type "inet"
>
> Try this with explicet cast:
>
> test=# create table ip (ip text);
> CREATE TABLE
> Zeit: 247,763 ms
> test=*# copy ip from stdin;
> Geben Sie die zu kopierenden Daten ein, gefolgt von einem Zeilenende.
> Beenden Sie mit einem Backslash und einem Punkt alleine auf einer Zeile.
>>> 127.0.0.1
>>> \.
> Zeit: 5199,184 ms
> test=*# alter table ip alter column ip type inet using ip::inet;
> ALTER TABLE
> Zeit: 242,569 ms
> test=*# \d ip
>      Tabelle »public.ip«
>   Spalte | Typ  | Attribute
> --------+------+-----------
>   ip     | inet |
>
> test=*#
>
>
> Regards, Andreas

Thanks guys, that seems to do the trick. Postgresql ROCKS!!!


--
Stephen Clark
NetWolves
Sr. Software Engineer III
Phone: 813-579-3200
Fax: 813-882-0209
Email: steve.clark@netwolves.com
www.netwolves.com


В списке pgsql-general по дате отправления:

Предыдущее
От: Scott Marlowe
Дата:
Сообщение: Re: alter column to inet get error.
Следующее
От: Devrim GÜNDÜZ
Дата:
Сообщение: Re: On-disk size of db increased after restore