Инструмент для обновления базы данных SQL Express после развертывания - PullRequest
2 голосов
/ 11 марта 2009

У меня есть приложение, использующее SQL Express, и мои клиенты в основном люди, у которых нет выделенного ИТ-персонала, поэтому я не знаю, как запускать сценарии. Поэтому развертывание и обновление должно быть простым. Часть развертывания все выяснила. Что мне нужно знать, так это когда выйдет версия 2 продукта и пора обновить структуру базы данных или данных, есть ли лучший способ, чем традиционный метод сценариев. Часто проблема с методами сценариев заключается в том, что у вас есть база данных, используемая группой разработчиков, и нет отслеживания того, кто внес какие изменения, чтобы иметь возможность включить их в базу данных развертывания.

Ответы [ 4 ]

2 голосов
/ 11 марта 2009

Отслеживайте или используйте продукт, такой как инструмент сравнения Red Gate, для создания сценария, а затем попросите программу установки запустить скрипт обновления. Пользователь никогда не должен будет делать больше, чем двойной щелчок по файлу setup.exe.

0 голосов
/ 22 апреля 2014

В Visual Studio 2012 перейдите в SQL (пункт меню) -> Сравнение схем. Нажмите «Выбрать источник» слева и выберите базу данных разработчика. Выберите производственную базу данных справа.

Затем нажмите значок сценария создания ( рядом со значком обновления, он более или менее похож на значок музыки ). Это сгенерирует скрипт обновления. Вы также можете отменить любые изменения, которые вы не хотите включать в скрипт. И это ... «бесплатно», если вы владеете Visual Studio 2012

0 голосов
/ 12 марта 2009

В вашей базе данных также должна быть таблица для отслеживания текущей версии, чтобы не повторять одни и те же обновления или делать их не по порядку - например, клиент применяет несколько исправлений. +1 для сравнения SQL.


Кроме того, SQL Compare будет переносить все в транзакции. Что вы также можете сделать. Они создают временную таблицу для хранения всех ошибок и откатываются в конце, если какая-либо из них дает сбой (iirc). Помогает, так что вы можете увидеть ошибки все сразу. Если обновление базы данных завершится неудачно, вы также можете сохранить его, а затем попросить клиента отправить его вам для устранения неполадок.

0 голосов
/ 11 марта 2009

Я бы порекомендовал использовать SQLCompare. Он позволяет вам вносить все изменения, не беспокоясь о сценариях, а затем вы можете быстро синхронизировать среду Dev / Stage с производственной средой или создать для этого сценарий, который можно запускать на удаленной машине.

Если вы не хотите раскошелиться на $$$, сохраните все ваши изменения в управлении исходным кодом точно так же, как и ваш код. Вы можете либо сохранить каждый скрипт изменений по отдельности, либо позволить транку вашей системы scc быть финальной версией БД и проходить через версии каждого объекта БД (я предпочитаю метод скрипта изменений, но я видел другую работу).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...