API сравнения схемы базы данных .net

Мне нужна возможность сравнить две схемы базы данных и убедиться, что они одинаковы (более или менее одинаковы, за некоторыми исключениями).

Я знаю, что в VS 2010 есть инструмент сравнения схем, но мне нужно что-то, что я могу использовать во время выполнения, я не думаю, что есть API для использования инструментов vs во время выполнения, кажется, что он есть, но он больше ориентирован на настройка инструментов во время разработки.

Есть ли способ использовать эти инструменты во время выполнения для сравнения схем или есть ли аналогичный инструмент (бесплатный/с открытым исходным кодом/платный)?


person Daniel Powell    schedule 16.05.2011    source источник
comment
зачем вам сравнивать схемы во время выполнения? Вы пишете инструмент, подобный Redgate?   -  person Mitch Wheat    schedule 16.05.2011
comment
у нас есть база данных, которую мы хотим обеспечить синхронизацией для целей аудита, при запуске приложения мы хотели бы сделать быстрое сравнение и выдать ошибку, если они не синхронизированы (за исключением некоторых исключений), чтобы мы могли выявить любые проблемы на ранней стадии.   -  person Daniel Powell    schedule 17.05.2011


Ответы (1)


Средство сравнения схем RedGate, SQL Compare Pro (но не стандартное edition), имеет интерфейс командной строки для автоматизации.

Обновление: (добавлена ​​ссылка на API)

В ответ на ваш комментарий к исходному вопросу: Другой подход состоит в том, чтобы иметь таблицу номеров версий схемы/приложения, которую приложение проверяет при запуске. Тогда весь процесс применения обновлений к схеме становится скорее операцией развертывания. Каждое обновление схемы может изменить номер версии.

person Mitch Wheat    schedule 16.05.2011
comment
Я думаю, мне нужно что-то более низкого уровня, не уверен, что это можно легко настроить, искал больше API, чем инструмент строки cmd. EDIT: кажется, есть API help.red-gate.com /help/SQLCompareAPIv6/0/ru/ - person Daniel Powell; 16.05.2011