Cómo cambiar el tamaño o tipo de columna en MySQL

El hecho de que haya creado una columna MySQL de un tipo o tamaño no significa que deba permanecer así. Cambiar el tipo o tamaño de columna en una base de datos existente es simple.

Cambiar el tamaño y el tipo de columna de una base de datos

Cambia el tamaño de una columna o escribe MySQL usando los comandos ALTER TABLE y MODIFY juntos para hacer el cambio. 

Digamos, por ejemplo, que tiene una columna llamada "Estado" en una tabla llamada "Dirección" y que previamente la configuró para contener dos caracteres, esperando que las personas usen abreviaciones de estado de 2 caracteres. Observa que varias personas ingresaron nombres completos en lugar de abreviaturas de 2 caracteres y desea permitirles que lo hagan. Debe agrandar esta columna para permitir que se ajusten los nombres de estado completos. Así es como lo haces:

ALTERAR TABLA dirección MODIFICAR estado VARCHAR (20);

En términos genéricos, utiliza el comando ALTER TABLE seguido del nombre de la tabla, luego el comando MODIFY seguido del nombre de la columna y el nuevo tipo y tamaño. Aquí hay un ejemplo:

 ALTER TABLE tablename MODIFY columnname VARCHAR (20);

El ancho máximo de la columna está determinado por el número entre paréntesis. VARCHAR identifica el tipo como un campo de caracteres variable.

Sobre VARCHAR

El VARCHAR (20) en los ejemplos puede cambiar a cualquier número apropiado para su columna. VARCHAR es una cadena de caracteres de longitud variable. La longitud máxima, en este ejemplo, es 20, indica el número máximo de caracteres que desea almacenar en la columna. VARCHAR (25) podría almacenar hasta 25 caracteres.

Otros usos para ALTER TABLE

El comando ALTER TABLE también se puede usar para agregar una nueva columna a una tabla o para eliminar una columna completa y todos sus datos de una tabla. Por ejemplo, para agregar una columna, use:

 ALTER TABLE nombre_tabla
 AGREGAR tipo de datos nombre_columna

Para eliminar una columna, use:

 ALTER TABLE nombre_tabla
 DROP COLUMN nombre_columna