Acabo de probar ALTER TABLE user MODIFY rate float(5) NOT NULL con mysql 5.6.26 y funcionó sin perder el valor.