Я хочу синхронизировать схему базы данных с моим проектом базы данных Visual Studio .dbproj.
Прямо сейчас я использую SSMS для большей части своей работы по разработке баз данных, и мне нужно вручную использовать инструмент сравнения схем Visual Studio, когда мне нужно синхронизировать схему db и .dbproj. Зачем мне это? потому как :
- Это единственный способ проверить изменения
- Это единственный способ применить изменения
- Невыполнение этого требования приведет к некоторым проблемам слияния при получении файлов (в основном, если «get last» содержит некоторые изменения БД для объектов БД, которые я обновлял без их проверки, слияние не будет инициировано, и его легко отследить какая версия какая)
- Приятно иметь возможность использовать функции поиска VisualStudio в современной версии схемы
- Приятно иметь возможность изменять хранимые процедуры из VS (обычно, когда вы переименовали файл), используя результаты поиска.
Помимо автоматизации инструмента сравнения схем, который запускается каждые 5 минут (что вряд ли звучит как «чистое» решение), есть ли способы достичь этого?
Я хотел бы продолжать использовать SSMS, если это возможно, но меня также интересуют способы автоматического распространения изменений, сделанных с помощью «Соединения обозревателя сервера / базы данных» Visual Studio, в .dbproj.
Ответы:
SQL Server Management Studio - это, прежде всего, инструмент управления SQL Server, поэтому он не обязательно создан для поддержки нужных вам сценариев.
Visual Studio Team System 2008 Database Edition и Visual Studio Team System 2010 Pro / Ultimate включают в себя инструменты разработчика баз данных (VSDB), помогающие тем, кто обладает обширными ресурсами базы данных, интегрировать свою схему базы данных / view / proc / etc. разработка с их разработкой приложений.
VSDB позволяет вам перепроектировать существующие схемы БД в проекты Visual Studio, чтобы вы могли управлять файлами сценариев для каждого элемента схемы. Вы также можете изменить / создать сценарии схемы SQL Server для создания практически всех элементов схемы, поддерживаемых SQL 2005/2008/2010.
VSDB также поддерживает возможность развертывания полных / частичных обновлений схемы БД в пустых / существующих БД, где он выполняет ОГРОМНУЮ работу, пытаясь применить только те изменения, которые необходимы для изменения существующей БД (если таковая имеется), чтобы она отражала структуру исходный проект базы данных VSDB.
VSDB также включает в себя ряд инструментов, помогающих сравнивать схемы между проектами БД и / или БД, а также позволяет анализировать и объединять содержимое таблиц.
Тем не менее, обратите внимание, что, хотя этот набор инструментов поддерживается сегодня, команда была расформирована, и продукт находится в режиме обслуживания. Группа продуктов SQL Server теперь отвечает за создание инструментов для разработчиков и усердно работает над этим :)
источник
Есть два способа, которыми я знаю с окончательными функциями VS2010, чтобы сделать это.
источник