Я бы сказал, что размер столбца должен представлять тип данных, которые вы храните. Если есть какое-либо преимущество в скорости, оно будет незначительным, и головные боли, которые вы испытываете с неправильной длиной столбцов, будут намного превосходить любую полученную вещь.
Еще одна вещь, которую вы должны иметь в виду, это то, что в Sql 2000 есть максимальная длина записи. Я думаю, что она составляет около 8192 байтов. Если вы выделяете поля степенями 2, вы потенциально можете добавить длину из одного столбца, которая потребуется в другом месте. Если ваши столбцы маленькие и их не много, это не проблема, но таблицы с большими полями varchar (скажем, в диапазоне 5000, что означает, что вам нужно выделить 8192, чтобы следовать соглашению степени 2). ) вам придется выделить для этого поля гораздо больше места, чем необходимо, и это вполне может помешать вам добавить другие поля, которые также необходимы в этой таблице.
Вы можете нарушить свое правило для этого сценария, но это означает, что вы перестали следовать установленному правилу. Это может быть хорошо, но это также означает, что когда кто-то возвращается и просматривает общую схему позже, возникает вопрос, почему некоторые столбцы следуют одному набору правил для распределения пространства, а другие нет.