Maison > Article > base de données > MySQL peut-il être configuré pour tronquer les données excessivement longues de manière cohérente ?
Troncation des données MySQL ou gestion des erreurs
MySQL gère la troncature des données différemment en fonction de ses paramètres. Dans certains cas, il tronque silencieusement les données excessives, tandis que dans d'autres, il génère une erreur.
Problème :
Un utilisateur dispose de deux instances MySQL dont une tronque les données. quand c'est trop long, et l'autre génère une erreur.
Question :
Existe-t-il un moyen de configurer MySQL pour tronquer systématiquement les données trop longues, similaire au premier exemple ?
Réponse :
Oui, la désactivation des paramètres du mode SQL STRICT_TRANS_TABLES et STRICT_ALL_TABLES permettra la troncature automatique des chaînes insérées.
Mise en œuvre :
SET GLOBAL sql_mode = '...,-STRICT_TRANS_TABLES,-STRICT_ALL_TABLES';
Explication :
STRICT_TRANS_TABLES et STRICT_ALL_TABLES appliquent des règles de validation des données plus strictes. La désactivation de ces paramètres assouplit la validation, permettant une troncature automatique.
Référence :
Modes SQL de MySQL Server : https://dev.mysql.com/doc/refman /8.0/fr/sql-mode.html
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!