Est-il plus efficace d'utiliser un champ varchar
dimensionné comme une puissance de deux par rapport à un autre nombre? Je pense que non, parce que pour SQL Server la valeur par défaut est 50.varchar - Une puissance de deux est-elle plus efficace?
Cependant, j'ai entendu (mais je n'ai jamais confirmé) que les champs de dimensionnement comme une puissance de 2 est plus efficace parce qu'ils équivalent à des octets pairs, et des ordinateurs traiter en bits & octets. Donc, est-ce qu'un champ déclaré comme varchar(32)
ou varchar(64)
a un réel avantage par rapport à varchar(50)
?
Un endroit possible pour que cela se produise serait dans le format en mémoire pour les lignes ... 2 longueurs^n devrait réduire la nécessité de décalages d'alignement. Habituellement, un petit effet, je soupçonne. – dmckee
L'alignement de la mémoire se fait en multiples, pas en puissances. Sur une architecture alignée sur 32 bits, les meilleurs décalages d'octets sont par exemple 4 × n. – Juliano