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 ?

Mary-Kate Olsen
Libérer: 2025-01-04 05:06:39
original
885 Les gens l'ont consulté

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

Erreur MySQL : "1406. Données trop longues pour la colonne"

Lorsque vous essayez d'insérer des données dans une table MySQL où la longueur des données de la colonne dépasse sa largeur définie, vous Je rencontrerai l'erreur « Code d'erreur : 1406. Données trop longues pour la colonne ».

Considérez ceci exemple :

CREATE  TABLE `TEST` (
  `idTEST` INT NOT NULL ,
  `TESTcol` VARCHAR(45) NULL ,
  PRIMARY KEY (`idTEST`) 
);
Copier après la connexion

L'insertion de données dans la longueur de colonne spécifiée fonctionne comme prévu :

INSERT INTO TEST
VALUES
(
    1,
    'Vikas'
);
Copier après la connexion

Cependant, tenter d'insérer des données qui dépassent la longueur de colonne maximale entraîne l'erreur :

INSERT INTO TEST
VALUES
(
    2,
    'Vikas Kumar Gupta Kratika Shukla Kritika Shukla'
);
Copier après la connexion

Cela se produit parce que MySQL tronque toute valeur d'insertion plus longue que la colonne spécifiée width.

Solution :

Pour résoudre ce problème, désactivez temporairement le mode strict de MySQL :

Dans votre my.ini (Windows) ou le fichier my.cnf (Unix) :

Modifiez le paramètre "sql-mode" pour supprimer "STRICT_TRANS_TABLES":

# Set the SQL mode to strict
sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
Copier après la connexion

Utilisation d'une requête SQL dans un outil de gestion de base de données :

Exécutez la requête suivante pour définir le mode SQL global sur vide :

SET @@global.sql_mode= '';
Copier après la connexion

Avec le mode strict désactivé, vous pouvez insérer des données qui dépassent la longueur de la colonne. Soyez toutefois prudent car cela peut entraîner des troncatures de données et des incohérences, utilisez donc cette solution judicieusement.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal