Обычно, если данные находятся в соотношении один к одному с существующими данными в таблице и если размер строки таблицы уже не слишком велик, и если в таблице не слишком много записей, то обычно я измените таблицу, чтобы принять новый столбец.
Однако предположим, что я хочу добавить столбец со значением по умолчанию в таблицу, где он не существует. Добавление его в таблицу с 50 миллионами записей может быть не таким быстрым процессом, и это может привести к блокировке таблицы при производстве, когда мы переместим изменение вверх. В этом случае лучше поместить его в отдельную таблицу и добавить в него записи. В общем, я бы не стал этого делать, если бы мое тестирование не показало, что добавление и заполнение столбца займет недопустимо много времени. Я бы предпочел вести записи вместе, где это возможно.
То же самое с общим размером записи. Сервер SQL имеет ограничение в байтах на количество байтов, которое может быть в записи, это позволит вам создать структуру, которая потенциально больше этого размера, но не позволит вам поместить в определенную запись больше, чем ограничение в байтах. , Кроме того, менее широкие таблицы, как правило, быстрее доступны из-за того, как они хранятся. Часто люди создают таблицу, которая имеет отношение один к одному (мы называем их расширенными таблицами в нашей структуре) для дополнительных столбцов, которые используются не так часто. Если поля из обеих таблиц будут часто использоваться, часто они по-прежнему создают две таблицы, но имеют представление, которое выберет все необходимые столбцы.
И, конечно, если данные находятся в отношении один ко многим, вам нужна связанная таблица, а не просто новый столбец.
Кстати, вы всегда должны вносить изменения в таблицу с помощью скрипта и графического интерфейса SSMS, так как это более эффективно и проще для перехода на продукт.