Maison >base de données >tutoriel mysql >Comment résoudre l'erreur MySQL 1406 : données trop longues pour la colonne ?

Comment résoudre l'erreur MySQL 1406 : données trop longues pour la colonne ?

Susan Sarandon
Susan Sarandonoriginal
2025-01-03 09:51:39322parcourir

How to Resolve MySQL Error 1406: Data Too Long for Column?

Code d'erreur : 1406 – Gestion des données excessivement longues dans MySQL

Lorsqu'ils tentent d'insérer des données dans une table MySQL, les utilisateurs peuvent rencontrer un code d'erreur 1406 : Données trop longues pour la colonne. Cette erreur se produit lorsque les données dépassent la longueur spécifiée pour le type de données de la colonne cible.

Cause de l'erreur :

Dans l'exemple fourni, la colonne VARCHAR TESTcol a une longueur de 45 caractères. Cependant, la tentative d'insertion de données d'une longueur de 47 caractères déclenche l'erreur. Par défaut, MySQL tronquera toutes les valeurs qui dépassent la largeur de colonne spécifiée.

Solution :

Pour contourner cette erreur, les utilisateurs peuvent envisager deux options :

  1. Ajuster la longueur de la colonne : Augmentez la longueur de la colonne cible pour accueillir les données les plus longues. Ceci peut être réalisé via une instruction ALTER TABLE, telle que :

    ALTER TABLE TEST MODIFY COLUMN TESTcol VARCHAR(60);
  2. Désactiver le mode strict : Dans MySQL, le mode strict contrôle le niveau de validation des données effectué. pendant les opérations d’insertion. La désactivation du mode strict permet l'insertion de valeurs dépassant la longueur des colonnes. Cependant, cette option peut compromettre l'intégrité des données et n'est pas recommandée dans la plupart des scénarios.

    SET @@global.sql_mode= '';

Remarque : La désactivation du mode strict doit être utilisée avec prudence et uniquement pour cas spécifiques où l'intégrité des données n'est pas un problème.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn