È più efficiente utilizzare un campo varchar
di dimensioni pari a due o un altro? Sto pensando no, perché per SQL Server il valore predefinito è 50.campi varchar: la potenza di altri due è più efficiente?
Tuttavia, ho sentito (ma non ho mai confermato) che i campi di dimensionamento come potenza di 2 sono più efficienti perché equivalgono anche a byte e computer processo in bit & byte.
Quindi, un campo dichiarato come varchar(32)
o varchar(64)
ha un vantaggio reale rispetto a varchar(50)
?
Un posto possibile per questo si verifichi sarebbe nel formato in-memory per le righe ... 2^n lunghezze dovrebbe ridurre la necessità di offset di allineamento. Di solito un piccolo effetto, sospetto. – dmckee
L'allineamento della memoria avviene in multipli, non in potenza. Su un'architettura allineata a 32 bit, i migliori offset di byte sono 4 × n, ad esempio. – Juliano