Вы можете сделать
SELECT * INTO #MyTable_tmp
ИЗ MyTable
Затем измените вашу MyTable и скопируйте ваши данные обратно. Другие подходы, которые я видел, - это создать новую таблицу с именем Mytable_Tmp (не временной), которая станет вашей новой таблицей.
Затем скопируйте ваши данные, выполнив любые необходимые миграции. Затем вы сбросите исходную таблицу и сделаете переименование на Mytable.
Или вы можете получить один из многих превосходных инструментов, которые сравнивают базы данных и генерируют разностные сценарии, или VSTS DB Edition (поставляется с разработчиком), и вы можете сделать diff-файл из файла проекта в БД.
Редактировать
Когда вы запускаете SELECT * INTO #MyTable FROM MyTable, SQL Server создает новую временную таблицу с именем #MyTable, которая соответствует каждому столбцу и типу данных из вашего предложения select. В этом случае мы выбираем *, чтобы он соответствовал MyTable. Это только создает столбцы, которые не копируют значения по умолчанию, индексы ограничений или что-то еще.