Наша команда использует проекты базы данных Visual Studio 2010. Большинство наших проектов опираются на MS Team Foundation Server для управления исходным кодом, который легко интегрируется, но недавно я обнаружил, что он будет работать (с небольшой болью) в других исходных системах. У нас есть один такой проект на Perforce. Функции сборки и развертывания VS2010 работают очень хорошо и могут быть автоматизированы с помощью PowerShell (очень полезно, например, если вы хотите восстановить базовый уровень для тестирования развертываний). Различные конфигурации могут быть созданы, если, например, вы хотите цели полного или дифференциального развертывания.
Вы также можете включить заполнение данных или другие сценарии в ваше развертывание, и они также контролируются версиями. Объектами базы данных можно управлять, проверяя создаваемые вами сценарии, или вы можете использовать более интуитивное представление схемы. Все зависимости отслеживаются. Вы можете управлять всеми аспектами вашей БД SQL Server под контролем исходного кода, включая все свойства, файлы и группы файлов, а также разрешения. Отлично подходит для поддержания стандартов и практики на месте. У него есть визуальный инструмент сравнения базы данных, я предпочитаю реализацию этой функции в Red-Gate, но вы не используете графическое сравнение для создания развертываний в VS2010, и это стало спорным, так как я привык к сборкам MS и насколько они помогите мне сохранить мои проекты БД в чистоте.
К сожалению, я не могу сравнить на этом уровне глубины с другими системами для контроля над базами данных. Я довольно много работал с «дисциплиной разработчика», но я больше не считаю эту систему системой и никогда не хочу возвращаться к этому. Также пришлось немного поработать над использованием плагина SSMS для SVN, но это было довольно давно. Для этого нам пришлось использовать Red-Gate для генерации сценариев развертывания.