En recherchant sur le Web, j'ai trouvé des conseils contradictoires sur la question de savoir s'il y a un impact sur les performances lors de la spécification de colonnes VARCHAR trop larges, par exemple VARCHAR (255) lorsque VARCHAR (30) fera probablement l'affaire.
Je vois toujours un accord qu'il y a un impact sur les performances si la ligne entière dépasse 8060 octets. À part cela, je vois un désaccord.
Est-ce vrai The default is SET ANSI PADDING ON = potential for lots of trailing spaces
? Tant que la largeur totale des lignes est inférieure à 8060, y a-t-il de réels problèmes de performances dans le surdimensionnement des colonnes VARCHAR?
Preuve que la largeur des colonnes est importante
The same goes for CHAR and VARCHAR data types. Don’t specify more characters in character columns that you need.
http://www.sql-server-performance.com/2007/datatypes/
Length is a constraint on the data (like CHECK, FK, NULL etc)
Performance when the row exceeds 8060 bytes
Can not have unique constraint or index (key column width must be < 900)
The default is SET ANSI PADDING ON = potential for lots of trailing spaces
Quelles sont les conséquences de la configuration de varchar (8000)?
Preuve que la largeur de colonne N'A PAS D'IMPORTANCE
If you're talking about varchar and nvarchar then no, there is no penalty for allowing a higher field length.
/programming/7025996/overstating-field-size-in-database-design
The varchar datatype, by contrast, consumes only the amount of
actual space used plus 2 bytes for overhead
http://sqlfool.com/content/PerformanceConsiderationsOfDataTypes.pdf
la source
max
partir denon max
). C'est la direction opposée qui a la surcharge la plus élevée.