En résumé, il y a une différence (je pense à MySQL), et essayer ne serait-ce que de limiter un peu la taille du varchar est une bonne idée.
Par exemple. l'optimiseur va regarder la définition de ta table, ne va voir que la taille max possible et va potentiellement créer une table temporaire sur le disque parce qu'il a estimé une taille trop grande.
Utiliser 255 au lieu de 25 ne devrait pas faire une grosse différence, mais utiliser 64k au lieu de 25 peut avoir un impact très négatif.
Une petite note sur les VARCHAR: si tu essayes de stocker une chaîne trop grande, MySQL va juste couper les caractères en trop, sans te prévenir. Pour éviter ça (et c'est une bonne pratique en général), utilise toujours le mode strict de mysql.
[^] # Re: pour partir d'un base existante
Posté par lom (site web personnel) . En réponse au message Création de clés étrangères. Évalué à 2.
En résumé, il y a une différence (je pense à MySQL), et essayer ne serait-ce que de limiter un peu la taille du varchar est une bonne idée.
Par exemple. l'optimiseur va regarder la définition de ta table, ne va voir que la taille max possible et va potentiellement créer une table temporaire sur le disque parce qu'il a estimé une taille trop grande.
Utiliser 255 au lieu de 25 ne devrait pas faire une grosse différence, mais utiliser 64k au lieu de 25 peut avoir un impact très négatif.
Une petite note sur les VARCHAR: si tu essayes de stocker une chaîne trop grande, MySQL va juste couper les caractères en trop, sans te prévenir. Pour éviter ça (et c'est une bonne pratique en général), utilise toujours le mode strict de mysql.