Las columnas de marca de tiempo son un caso especial. Consulte aquí :De forma predeterminada, las columnas TIMESTAMP NO son NULL, no pueden contener valores NULL y al asignar NULL se asigna la marca de tiempo actual.
Para obtener información más detallada, lea Valores predeterminados del tipo de datos .
Específicamente, esa situación se aplica cuando no se ejecuta en modo estricto. Si se ejecuta en modo estricto, insertar un NULL generará un error.
Esto debería solucionarlo:
ALTER TABLE tableName ALTER COLUMN columnName DROP DEFAULT;
Si eso no funciona, se supone que hacer esto lo dejará con el valor predeterminado (que se sobrescribe fácilmente), pero elimine ON UPDATE:
ALTER TABLE tableName CHANGE columnName columnName NOT NULL DEFAULT CURRENT_TIMESTAMP;
Tenga en cuenta el nombre de columna repetido.