Допустим у нас есть переменная varchar с размером 5, мы в нее записали всего 2 буквы, а затем завили еще переменные числового тип.varchar, как следует из названия, строка переменной длины. В её нельзя "завили"-ть число без преобразования.
Как происходит распределение памяти?Это дело оптимизатора SQL-сервера. Единственное, что известно точно, это размер станицы.