¿Por qué MySQL permite actualizar una columna NOT NULL a NULL?

Estoy corriendoMySql enubuntu 10.10. He creado una tabla llamada'employee' tener 3 nombres de campoempno, nombre y sueldo. Inserta pocas entidades. En medio del proceso quiero cambiar el atributo de salario como'NOT NULL'. Altero la mesa como

ALTER TABLE employee MODIFY salary int(10) NOT NULL;

Consulta ejecutada. Quería probar usando el comando,

UPDATE employee SET salary=NULL;

Query OK, 15 rows affected, 15 warnings (0.06 sec)
Rows matched: 15  Changed: 15  Warnings: 15

tambien dio advertencias" (Code 1048): Column 'salary' cannot be null "(Repetido para cada fila)

Pero cuando vi mi mesa, todos los salarios eran ceros ('0').

Las mismas consultas dan como resultado un error en lugar de una advertencia en MySQL de WINDOWS XP

Revisé los motores INNODB y MYISAM pero con el mismo resultado. Por favor, ayúdame a saber qué sucedió al lado del procesamiento.

Respuestas a la pregunta(2)

Su respuesta a la pregunta