Что касается производительности и оптимизации:
Вот аналогичный вопрос по DBA.SE: Имеет ли значение порядок столбцов в определении таблицы?





Я бы сказал, что ответ на все эти вопросы - НЕТ, хотя мой опыт работы с MS-SQL идет вплоть до SQL2000. В SQL 2005 может быть другая история
Нет первым 3, потому что индекс будет содержать данные, а не последний раз.
Для четвертого маркера: Нет, вы не можете указать, где вы хотите добавить столбец. Вот синтаксис ALTER TABLE: https://msdn.microsoft.com/en-us/library/ms190273.aspx
В MySQL они предлагают ALTER TABLE ADD ... AFTER ... но этого нет в T-SQL.
Если вы хотите изменить порядок столбцов, вам придется перестроить таблицу.
Обновлено: для вашего последнего пункта маркера последний вам придется УДАЛИТЬ таблицу и воссоздать ее, чтобы изменить порядок столбцов. Некоторые графические инструменты, которые управляют базами данных SQL, сделают это за вас и сделают так, будто вы переупорядочиваете столбцы, так что вы можете захотеть изучить это.
ссылка исправлена. борьба с гнилью ссылок с [404]
В SQL Server 2005 размещение столбцов переменной длины, допускающих значение NULL, влияет на пространство - размещение столбцов переменного размера, допускающих значение NULL, в конце определения может привести к меньшему потреблению места.
SQL Server 2008 добавляет функцию столбца «SPARSE», которая сводит на нет это различие.
См. здесь.
Для первой пули:
да, порядок столбцов делает имеет значение, по крайней мере, если вы используете устаревшие BLOB-объекты image, text или ntext и используете SQL Server
В таких случаях у вас должны быть эти столбцы в «конце» таблицы, и каждый раз, когда вы их извлекаете, производительность падает.
Если вы извлекаете данные из такой таблицы с помощью DAL, это идеальное место для шаблона Ленивая загрузка.
Я думал, что прокомментировал. Полный мусор stackoverflow.com/questions/6692021/…
Порядок столбцов не имеет значения при создании таблицы. Мы можем расположить столбцы при извлечении данных из базы данных. Первичный ключ может быть установлен для любого столбца или комбинации столбцов.
См. stackoverflow.com/questions/6692021/…