Je viens de rencontrer cette erreur, et il semble que la solution était d'utiliser le IGNORE
déclaration :
ALTER IGNORE TABLE `table` CHANGE COLUMN `col` `col` int(11) NOT NULL;
Notez que vous pouvez toujours avoir des problèmes de troncature de données, alors assurez-vous que c'est le résultat souhaité. L'utilisation de l'instruction IGNORE supprimera les erreurs de données tronquées pour les valeurs NULL dans les colonnes (et éventuellement d'autres erreurs !!!)