Modificar Tablas en SQL: Uso de ALTER TABLE
Clase 14 de 24 • Curso de Fundamentos de Bases de Datos
Resumen
¿Sabes qué hacer cuando necesitas añadir, modificar o eliminar una columna en una tabla SQL ya existente? El comando ALTER TABLE es una herramienta esencial en SQL que te permite realizar estos ajustes de manera segura y clara. Aprende cómo usar add column
, modify column
, drop column
, rename column
y hasta cambiarle el nombre a una tabla entera.
¿Cómo agregar una nueva columna en una tabla existente?
Para añadir una columna nueva en una tabla SQL, utilizamos la sintaxis básica:
ALTER TABLE nombreTabla ADD COLUMN nombreColumna tipoDato;
Por ejemplo, para añadir una columna price
:
ALTER TABLE test ADD COLUMN price FLOAT;
¿Cómo especificar la posición de la columna añadida?
Puedes colocar tu nueva columna al inicio utilizando FIRST
, o después de una columna específica con AFTER
:
ALTER TABLE test ADD COLUMN price FLOAT FIRST;
ALTER TABLE test ADD COLUMN price FLOAT AFTER quantity;
¿Cómo eliminar columnas de una tabla?
Si necesitas quitar una columna por completo:
ALTER TABLE test DROP COLUMN price;
Es importante verificar bien antes de ejecutar este comando, ya que perderás todos los datos de esa columna.
¿Cómo modificar columnas existentes?
Cuando precises cambiar el tipo de dato o propiedades de una columna:
ALTER TABLE test MODIFY COLUMN price DECIMAL(10,3) NOT NULL;
En este caso, la columna price
cambiará de FLOAT
a DECIMAL
con 10 dígitos en total; 3 de ellos después del punto decimal.
¿Qué precauciones hay que tomar al modificar columnas en producción?
Cambios en columnas con información ya existente deben realizarse con cuidado. Asegúrate que el nuevo tipo de dato sea compatible con los datos previamente almacenados.
Recomendaciones útiles:
- Haz pruebas previas para verificar errores posibles.
- Realiza revisiones con colegas (peer review) antes de ejecutar cambios en producción.
¿Cómo cambiar el nombre de columnas y tablas?
Renombrar una columna existente se logra con:
ALTER TABLE test RENAME COLUMN price TO prices;
Cambiar el nombre completo de la tabla también es sencillo:
ALTER TABLE test RENAME TO tests;
Estos cambios no afectan los datos internos, solo el nombre de la estructura.
¿Cómo ajustar atributos específicos de columnas?
Si buscas modificar ciertos atributos, como un valor predeterminado, utiliza nuevamente modify column
manteniendo los parámetros que no deseas cambiar e incluyendo tus adiciones:
ALTER TABLE tests MODIFY COLUMN prices DECIMAL(10,3) NOT NULL DEFAULT 10;
Si deseas remover el valor predeterminado, asegúrate que los ajustes sean congruentes:
ALTER TABLE tests MODIFY COLUMN prices DECIMAL(10,3) DEFAULT NULL;
Estos ejemplos te ayudarán a mantener una base de datos ordenada y clara. ¡Comparte tu experiencia o dudas en los comentarios!