mysql: comment tronquer la longueur d'un champ
Alter table merry_parents change mobile mobile char(10).
Quand je le fais ci-dessus, j'obtiens une erreur:
#1265 - Données tronquées pour la colonne 'mobile' à la ligne 2
Comment puis-je tronquer mon mobile, champ de char(10)? Actuellement, il est de type char(12).
Vous devez vous connecter pour publier un commentaire.
L'erreur est vous dire qu'il y a des données de 12 caractères dans la ligne 2 (et probablement d'autres), il est donc arrêté la commande alter pour éviter de perdre des données.
Essayez de mettre à jour votre table à l'aide de
SUBSTRING()
de raccourcir la colonne. On ne sait pas pourquoi vous voulez faire ce que vous perdez des données, mais cela va tronquer les données de 10 caractères:Puis exécutez votre commande alter:
Si vous êtes ok avec tronquer les données à 10 caractères - vous pouvez mettre à jour la colonne d'abord, puis la redimensionner
Puis exécutez votre instruction alter.
Si vous êtes prêt à avoir des données tronquées, vous pouvez le faire en une seule étape en utilisant l'option IGNORER sur l'autel:
Vous avez des données qui a plus de caractères que la longueur de la colonne que vous essayez de le modifier dans.
Ou vous avez une valeur null dans le champ spécifié.
http://bugs.mysql.com/bug.php?id=14742