Troncation des données MySQL et gestion des erreurs
Dans MySQL, la gestion des données qui dépassent les limites de longueur de colonne peut varier d'une instance à l'autre. Dans certains cas, les données excessives sont tronquées sans générer d’erreurs, tandis que dans d’autres, une erreur est générée. Cette question explore le paramètre MySQL qui permet la troncature des données dans des scénarios spécifiques.
Énoncé du problème :
Deux instances MySQL présentent un comportement différent lors de l'insertion de données dépassant la longueur autorisée : l'un tronque les données, tandis que l'autre génère une erreur. La question cherche une solution pour modifier l'instance errante afin de tronquer également les données.
Solution :
Pour activer la troncature automatique des longues chaînes lors de l'insertion de données, MySQL propose les paramètres suivants :
La désactivation de ces paramètres permet à MySQL de tronquer automatiquement les chaînes insérées, résolvant ainsi la différence de comportement entre les deux instances.
Extrait de la documentation MySQL :
"Le mode strict contrôle la façon dont MySQL gère les valeurs invalides ou manquantes dans les instructions de modification de données telles que INSERT ou UPDATE... Une valeur peut être invalide pour plusieurs raisons. Par exemple, elle peut avoir un type de données incorrect pour la colonne, ou elle peut être hors plage. Une valeur est manquante lorsqu'une nouvelle ligne à insérer ne contient pas de valeur pour une colonne non NULL qui n'a pas de clause DEFAULT explicite dans sa définition."
Référence :
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!