Сравнение баз данных VS2010. Как создать файл с расширением *.DBSchema?

Я хотел бы сделать снимок моей базы данных, внести некоторые изменения, а затем использовать функцию сравнения баз данных, чтобы идентифицировать изменения, и, кто знает, может быть, даже сгенерировать сценарии для внесения изменений.

Я хотел бы избежать необходимости резервного копирования текущей базы данных и восстановления ее как отдельной базы данных только для того, чтобы получить снимок «до». Я предполагаю, что не должен.

Очевидно, я ничего не знаю о проектах db и надеюсь, что меня укажут в правильном направлении.

ty!


person Chad    schedule 04.05.2010    source источник


Ответы (2)


На машине, на которой вы будете генерировать файл схемы, выполните следующие действия: ="nofollow noreferrer">Загрузить Microsoft SQL Server Compact 3.5 с пакетом обновления 2 для рабочего стола Windows. Сначала установите 32-битную версию, затем 64-битную (если ваш сервер 64-битный)

Скопируйте файлы в (Program Files\Microsoft Visual Studio 10.0\VSTSDB\Deploy) в машине, на которой вы будете запускать VSDBCMD.EXE, игнорируйте файлы CE на шаге 2, вы уже установили их при установке Compact SQL выше.

Прочтите и поймите Справочник по командной строке для VSDBCMD.EXE http://msdn.microsoft.com/en-us/library/dd193283.aspx

Создайте файл dbschema, запустив его из командной строки: VSDBCMD /a:import /cs:"DbConnectionString" /dsp:SQL /ModelFile: outputfilname.dbschema

person vzczc    schedule 23.06.2010
comment
Блин! Где мой графический интерфейс!!!!???? ... и нам нужна структура COMPACT для сравнения двух баз данных для сравнения и создания сценариев для обновления одной до состояния другой? Скажи, что это не так! Красные ворота, я иду... - person Chad; 23.06.2010
comment
Что ж, если у вас есть прямой доступ к серверу, вы можете просто использовать VS2010, создать проект базы данных и сгенерировать модель из базы данных, внести изменения, а затем сравнить ее из VS2010. Но тогда вам не нужен файл dbschema - person vzczc; 24.06.2010

Я использую VS2010 Premium и смог сделать следующее:

  1. В обозревателе серверов добавьте подключение данных к базе данных A и базе данных B.
  2. Щелкните правой кнопкой мыши базу данных A и выберите «Сравнить схему».
  3. Выберите базу данных B в качестве цели, установите параметры/переменные, затем нажмите OK.

У меня также установлен SQL Server Developer Edition... так что, возможно, именно это добавляет эту функциональность.

Не знаю почему, но это не сработало для базы данных SQL Azure.

person Doug Clutter    schedule 13.04.2011