J'utilise une ancienne table, qui a un champ de varchar (40) dedans. Je veux qu'il soit possible d'insérer plus de caractères dans ce champ, je veux donc augmenter la longueur de celui-ci.
Existe-t-il des conséquences négatives possibles que je devrais penser avant d'augmenter la longueur? P>
3 Réponses :
Si vous avez réglé la longueur de 40, mais si vous essayez d'insérer plus de caractères, tout sera rejeté, entraînant une valeur de champ vide. Vous devez fournir la valeur de la longueur supérieure que vous devriez entrer pour ce champ. P>
Comment cette réponse est-elle liée à la question? Sauf pour utiliser certains des mêmes termes.
Sarfraz Ahmed: Vous avez probablement mal compris ma question. J'ai déjà un champ d'une longueur de 40, mais ce n'est pas assez d'espace, je veux donc l'augmenter. Existe-t-il des conséquences éventuelles d'augmenter la longueur.
Pour autant que je sache, cela n'est également pas techniquement vrai, à partir de MySQL 5, car il tronque les excès de caractères au lieu de rejeter tout.
augmenter devrait typiquement strong> ne pas causer des problèmes, c'est la
En disant généralement, vous voulez dire qu'il existe des situations où il pourrait y avoir des problèmes? Des situations comme quoi?
Eh bien, cela pourrait dépendre de ce que vous faites avec cette colonne. Par exemple, le client ou une procédure stockée peut essayer de le stocker dans une autre colonne d'une autre table qui est soudainement trop petite. De telles dépendances sont parfois difficiles à trouver.
Selon la version de MySQL, la version peut contenir des bugs. De plus, je ne sais pas comment cela pourrait affecter la pagination de données ou d'indexation stockées, ainsi que des références à cette colonne de SPS, etc.
Changer la taille déclarée d'un champ Varchar doit ne pas nécessiter que les données existantes soient modifiées. p>
Notez que la modification de la taille du champ Char ou de numéro nécessitera que MySQL met à la mise à jour de chaque valeur affectée au nouveau type. Changer de champs ou d'ajout de colonnes peut entraîner une réécriture de la table entière afin d'accueillir une plus grande taille de ligne, selon qu'il existe un espace redondant au niveau de la rangée. Cela peut prendre un certain temps sur une grande table. P>
Assurez-vous de mettre à jour les autres tables qui rejoignent cette colonne aussi! P>
htth p>
c. p>
Vérifiez également les excellentes réponses du duplicata: Stackoverflow.com/a/27671966/1066234 et plus ici aussi: dba.stackexchange.com/q/76469/200937 et enfin: dba.stackexchange.com/q/424/200937