[pgsql-ayuda] ?Modificar Longitud de Columna?

Fernando del Valle fdv@statics.com.ar
Thu, 23 Nov 2000 17:04:02 -0300


Hola,

Hay un error conceptual: el DEFAULT no es la longitud de una columna,
sólo el valor por defecto (aplicable, por ejemplo, al insertar un registro y
dejar esa columna inespecificada).

En otra lista se hizo así:

update pg_attribute set atttypmod = 104 where attname = 'nombre_columna'
and attrelid = (select oid from pg_class where relname = 'nombre_tabla'); 

para ensanchar la columna a 100 bytes. Es un poco sucio, y no estoy
seguro de que no se pierdan datos.

También podrías hacer un pg_dump, editar el archivo resultante para modificar
el ancho de esa columna, y luego rearmar la base. Eso sería así:

$ pg_dump base [-t tabla] > salida.out
$ vi salida.out
(aquí buscas donde dice CREATE TABLE y modificas la definición de la
columna).
(luego borras la tabla de la base de datos, para que la reconstruya)
$ psql -e base < salida.out

Y debería andar. 

Saludos,

Fernando del Valle

On Fri, 24 Nov 2000, you wrote: >Saludos:
>
>Quiero cambiar la longitud de una columna de una tabla pero no me deja, lo que estoy 
>haciendo es:
>
>ALTER TABLE profesor ALTER COLUMN prof_nombre_com SET DEFAULT varchar(50); 
>
>que me falta o que estoy haciendo mal?
>
>GRACIAS.
>
>
>Gabriel Guevara Gutiérrez
>Tel. Casa: 56-68-55-30
>Tel. Trab: 56-22-83-65
>Tel. Cel:  044-26-78-18-49
>ICQ: 98074824
>______________________________________________________________
>E-mail y acceso gratis a la Internet en http://www.Tutopia.com
>--------- Pie de mensaje -------------------------------------------
>Archivo historico: http://tlali.iztacala.unam.mx/maillist/pgsql-ayuda
>Cancelar inscripcion:
>mail to: majordomo@tlali.iztacala.unam.mx
>text   : unsubscribe pgsql-ayuda
--------- Pie de mensaje -------------------------------------------
Archivo historico: http://tlali.iztacala.unam.mx/maillist/pgsql-ayuda
Cancelar inscripcion:
mail to: majordomo@tlali.iztacala.unam.mx
text   : unsubscribe pgsql-ayuda