[caracas-pm] Alter Colunm en postgres

Vicente Guedez Lopez vicente at construguia.com
Thu Feb 3 08:10:29 PST 2005


Saludos Alexis...
Yo lo he hecho así y me ha funcionado bien hasta los momentos...

1. Copias la columna original con toda su información a otra columna nueva
con nombre diferente y
   con el tipo de dato que deseas pero que contenga la misma información es
decir replicas la columna con otro nombre.
2. Haces un drop de la columna original
3. Haces un alter table para renombrar la columna que recien has creado y le
colocas el nombre original.

USADO PARA CAMBIO DE LONGITUD DE CAMPO EN TABLE PICS

Ejemplo:

tabla               => pics
columna original    => url
columna de destino  => url2
nuevo tipo de campo => varchar(250);

BEGIN;
ALTER TABLE pics ADD COLUMN url2  varchar(250);
UPDATE tab SET url2 = CAST(url AS varchar(250);
ALTER TABLE pics DROP COLUMN url;
COMMIT;

VACUUM FULL pics;

ALTER TABLE pics RENAME COLUMN url2 TO url;


----------------------------------------------------------------------------
-

-----Original Message-----
From: caracas-pm-bounces at pm.org [mailto:caracas-pm-bounces at pm.org]On
Behalf Of Alexis Arnal
Sent: Jueves, 03 de Febrero de 2005 06:41 a.m.
To: Perl Mongers Caracas - Venezuela
Cc: unplug
Subject: [caracas-pm] Alter Colunm en postgres


Saludos, estoy trabajando en Postgres 7.4 y tengo una duda acerca de
como alterar un campo que he definido como un tipo, por ejemplo un
integer y lo deseo cambiar a varchar.

Estuve leyendo la documentación y no encontre forma de hacerlo, tambien
traté de utilizar unas herramientas gráficas (phpPgAdmin) y no tenía la
opción.

Por ahora cuando me sucede algo parecido tengo que borrar la tabla y
luego crearla, previamente respaldada la data, como la base de datos
esta full relacionada tengo que hacerle un dump a toda la base de datos
modificar el script y luego subirlo

Sigo buscando, si alguien sabe como hacerlo o si no es posible por favor
me avisan

Gracias


--
Alexis Arnal
Linux user number 378161
Caracas-Venezuela

_______________________________________________
caracas-pm mailing list
caracas-pm at pm.org
http://mail.pm.org/mailman/listinfo/caracas-pm





More information about the caracas-pm mailing list