Загрузите RedGate инструменты и узнайте. Я считаю, что у них всех есть пробные периоды, и я уверен, что SQL Compare имеет.
Как правило, вы указываете их на две базы данных, и они перечисляют все различия между ними. Вы можете настроить их так, чтобы они игнорировали определенные вещи, такие как комментарии, имена ограничений и т. Д. Оттуда вы можете выбрать, какие элементы вы хотите синхронизировать и в каком направлении, и инструмент либо сгенерирует скрипт для вас, либо он выполнит изменения для вас.
В вашей ситуации вы, вероятно, сгенерируете скрипт, а затем будете использовать его в качестве основы для того, что вы отправите своим клиентам или что вы включите в ваши скрипты установки. Просто сохраните базу данных для каждой версии вашего приложения, и вы сможете создавать сценарии для перехода от одной версии к другой, указывая на две базы данных. Вы можете оставить их пустыми (или просто заполнить справочные таблицы), чтобы они не занимали слишком много места.
Вы также можете использовать SQL Data Compare для синхронизации таблиц поиска. Просто используйте его для справочных таблиц, но не для таблиц основных данных.
Независимо от того, по какому маршруту вы идете, вам придется выполнять какое-то пользовательское кодирование либо потому, что вам нужно преобразовать данные при изменении структуры, либо по аналогичной причине.