1. ALTER TABLE tbl_name ADD

ALTER TABLE tbl_name ADD
(
nombre_columna1 TIPO <NOT NULL | NULL> <DEFAULT default_value> <AUTO_INCREMENT>,
nombre_columna2 TIPO <NOT NULL | NULL> <DEFAULT default_value>,
nombre_columna3 TIPO <NOT NULL | NULL> <DEFAULT default_value>,
nombre_columnaN TIPO <NOT NULL | NULL> <DEFAULT default_value>,
{INDEX|KEY} <index_name1> (index_col_name,...),
{INDEX|KEY} <index_nameN> (index_col_name,...),
CONSTRAINT1,
CONSTRAINTN
)
NOTA: Toda la sintaxis de ALTER TABLE ADD se resume diciendo que es la misma sintaxis que tiene CREATE TABLE.

2. ALTER TABLE tbl_name CHANGE

ALTER TABLE tbl_name CHANGE <COLUMN> old_col_name new_col_name column_definition
2b. ALTER TABLE tbl_name MODIFY
ALTER TABLE tbl_name MODIFY <COLUMN> col_name column_definition
3. ALTER TABLE tbl_name DROP
ALTER TABLE tbl_name DROP <COLUMN> col_name
ALTER TABLE tbl_name DROP PRIMARY KEY
ALTER TABLE tbl_name DROP {INDEX|KEY} index_name
ALTER TABLE tbl_name DROP FOREIGN KEY fk_symbol

Ejemplo (By Alberto C.)

Supongamos que quiero añadir el campo FechaNacimiento a mi tabla Alumnos, y quiero que sea NOT NULL.
ALTER TABLE alumnos ADD (
FechaNac DATE);
--actualizo todas las fechas de nac. de los alumnos--
ALTER TABLE alumnos MODIFY
FechaNac DATE NOT NULL;
No pongo NOT NULL porque daría fallo.
.
.
.
.


Ahora si puedo exigir que sea NOT NULL
+Info: Ejemplo de uso del ALTER TABLE basado en el script laboratorios