¿Requieres de una instalación o configuración de Linux o sus servicios?
¿Un desarrollo WEB empresarial a la medida?
¿Un curso o capacitación a la medida?
Revisa el sitio de SERVICIOS de LinuxTotal


MySQL, referencia de uso del comando 'ALTER TABLE' 

Copyright © 2005-2025 LinuxTotal.com.mx
Se concede permiso para copiar, distribuir y/o modificar este documento siempre y cuando se cite al autor y la fuente de linuxtotal.com.mx y según los términos de la GNU Free Documentation License, Versión 1.2 o cualquiera posterior publicada por la Free Software Foundation.

Autor:  

En SQL, 'Alter' es un comando de la categoría DDL (Data Definition Language) y como su nombre lo indica sirve para alterar objetos ya creados en un base de datos, su uso principal es la modificación de tablas. Como en otros artículos de LinuxTotal.com.mx enseñaré su sintaxis a través de varios ejemplos de uso. Se asume que ya tienes creada la base de datos y que sabes como usar el monitor (interface de línea de comandos de MySQL), asi que esta guía es como un referencia rápida (cheat sheet) para cuando la requieras.


REFERENCIA DE USO DE 'ALTER TABLE' EN MYSQL
SOBRE LA TABLA
ALTER TABLE ejemplo ENGINE = InnoDB
Cambiar el tipo de motor (engine) de la tabla 'ejemplo'
ALTER TABLE personas RENAME usuarios
Cambia el nomnbre de la tabla 'personas' a 'usuarios'
ALTER TABLE ejemplo AUTO_INCREMENT=1000
En la tabla 'ejemplo' cualquiera que sea la columna que tenga 'AUTO_INCREMENT' en sus propiedades (solo puede haber una), los nuevos registros comenzarán a partir de '1000' o cualquier número indicado, no es posible utilizar un valor ya existente.
ALTER TABLE ejemplo CONVERT TO CHARACTER SET latin1
La tabla 'ejemplo' ahora almacenará sus valores en base al juego de caracteres 'latin1' (iso-8859-1).
OPERACIONES CON DROP
ALTER TABLE ejemplo DROP COLUMN nombre
Elimina la columna 'nombre' de la tabla 'ejemplo'.
ALTER TABLE ejemplo DROP COLUMN nombre, DROP COLUMN paterno
Elimina más de una columna.
ALTER TABLE ejemplo DROP COLUMN nombre, DROP COLUMN paterno
Elimina más de una columna.
ALTER TABLE ejemplo DROP INDEX usuario
Elimina el índice 'usuario'.
ALTER TABLE ejemplo DROP PRIMARY KEY
Elimina la llave primaria de la tabla 'ejemplo'
ALTER TABLE ejemplo DROP FOREIGN KEY id_usuario
Elimina de la tabala 'ejemplo' la llave foranea 'id_usuario'.
OPERACIONES CON CHANGE Y MODIFY
ALTER TABLE ejemplo CHANGE monto cantidad FLOAT(8,2)
Cambia el nombre de la columna 'monto' al nuevo nombre 'cantidad' con la definición del tipo de datos.
ALTER TABLE ejemplo CHANGE cantidad cantidad FLOAT(10,2)
Cambia solo el tipo de datos de la columna, conservando el mismo nombre.
ALTER TABLE ejemplo MODIFY cantidad FLOAT(10,2)
Cambia solo el tipo de datos de la columna, conservando el mismo nombre. (Igual que el anterior)
ALTER TABLE ejemplo MODIFY cantidad FLOAT(6,2) NOT NULL
Cambia el tipo de datos de la columna 'cantidad' y especifica que no admite nulos.
ALTER TABLE ejemplo MODIFY paterno VARCHAR(30)
Modifica el tamaño de la columna 'paterno'.
ALTER TABLE ejemplo MODIFY correo CONVERT TO CHARACTER SET utf8
Es posible convertir solo una columna, en este caso 'correo' a un juego de caracteres distinto al de todo el resto de la tabla.
OPERACIONES CON ADD
ALTER TABLE ejemplo ADD fecha DATE
Añade una columna llamada 'fecha' del tipo 'DATE' al final de todas las demás existentes.
ALTER TABLE ejemplo ADD INDEX(categoria)
Añade un índice a la columna 'categoria'.
ALTER TABLE ejemplo ADD INDEX(categoria), ADD PRIMARY KEY(clave)
Añade un índice a la columna 'categoria' y además crea la llave primaria en la columna 'clave'.
ALTER TABLE ejemplo ADD UNIQUE(email)
Añade a la columna 'email' un índice del tipo único, no puede haber dos iguales.
ALTER TABLE ejemplo ADD consecutivo BIGINT AUTO_INCREMENT, ADD INDEX(consecutivo)
Añade la columna 'consecutivo' con la característica de auto incremento y además genera un índice sobre la misma.
ALTER TABLE ejemplo ADD materno VARCHAR(20) AFTER paterno
Añade la columna 'materno' después de la columna 'paterno'.
ALTER TABLE ejemplo ADD id INT FIRST
Añade la columna 'id' en primer lugar con respecto a las existentes.
ALTER TABLE usuarios ADD FOREIGN KEY(id) REFERENCES entradas(id_user)
Añade un 'Foreign key' en la columna 'id' de la tabla 'usuarios' que apunta a la columna 'id_user' de la tabla 'entradas'.


Artículos relacionados

Si eres un administrador de MySQL tal vez te interese saber más de respaldos con mysqldump, revísalo en este artículo.



¿Requieres de una instalación o configuración de Linux o sus servicios?
¿Un desarrollo WEB empresarial a la medida?
¿Un curso o capacitación a la medida?
Revisa el sitio de SERVICIOS de LinuxTotal

LinuxTotal en:

Si encuentras útil la información que proveé LinuxTotal, considera realizar un donativo que estimule a seguir proporcionando contenido de calidad y utilidad. Gracias.


Dona a través de paypal::


O a través de bitcoins:


14TNQv5wM3xkSv65gHGQ6s6f8yTZuFTohE
Más artículos de LinuxTotal

Uno de mis clientes tiene múltiples aplicaciones basadas en VisualBasic 6 y como base de datos Access, que se ejecutan directamen....


¿Has visto esa combinación de r,w,x,- cuando listas un directorio?, tienes cierta idea que son los permisos, pero ¿como se usan....


De acuerdo a la definición en wikipedia un rootkit es una herramienta, o un grupo de ellas que tiene como finalidad esconderse a ....


Lo primero que debes hacer una vez que instalas un servidor de base de datos MySQL (casi todas las distros actuales lo instalan po....


¿Olvidaste o perdiste la contraseña del usuario 'root' de MySQL?, no hay problema, solo sigue estás sencillas instrucciones y p....


En ambientes donde varios usuarios usan uno o más sistemas GNU/Linux, es necesario otorgar distintos permisos o privilegios para ....


GNU/Linux es increiblemente fácil de configurar, no bases de datos raras, no registros, no directorios regados por aquí y por al....


Para Linux todo es un archivo, incluyendo dispositivos como discos duros, cdroms, disquetes, unidades de cinta, memorias usb, etc.....


La siguiente combinación de comandos te permite extraer los 10 comandos más usados directamente del historial (comando history) ....


En este tutorial sobre listas de control de acceso en squid, aprenderás lo básico de como configurarlas y establecerlas en la co....



Copyright © LinuxTotal.com.mx 2006-2025
info@linuxtotal.com.mx · linuxtotal.com.mx@gmail.com