Автоматизировать создание схемы схемы БД SQL Server - PullRequest
4 голосов
/ 07 января 2010

В рамках процесса контроля изменений в БД одна из задач состоит в обратном проектировании изменений в нашей диаграмме схемы с использованием Visio. Это немного утомительно, и мы искали способ автоматизировать это.

У нас уже есть CI и Release для тестирования, который генерирует самую последнюю БД. Все, что нам нужно, - это какое-то приложение, которое будет анализировать базу данных и при необходимости генерировать из нее диаграмму.

Любая помощь будет оценена.

Ответы [ 5 ]

2 голосов
/ 13 января 2010

хорошо - в третий раз повезло.

Я не знаю ни одного инструмента, который мог бы сделать это за один шаг - но я не думаю, что кто-то из них будет делать то, что вы хотите (за исключением, возможно, некоторых действительно высококачественных инструментов).

Таким образом, я думаю, что вам лучше всего использовать один из вышеупомянутых скриптов, таких как dbschema.pl, и отправлять вывод в что-то вроде sql2diagram

Это должно быть просто, чтобы написать сценарий - и отправьте по электронной почте вывод, кому это нужно. Поскольку у вас есть текстовый вывод на промежуточном этапе, вы также можете выделить различия, сохранив несколько копий выходных данных.

Можете ли вы уточнить, что вы подразумеваете под "Организовать таблицы"

1 голос
/ 15 января 2010

RedGate SQL Toolkit станет вашим жизненным сервером.

Посмотрите на этот вопрос и мой ответ NHibernate и изменения базы данных / развертывание

1 голос
/ 11 января 2010

Мое приложение dbscript генерирует диаграммы Dia из схемы базы данных .

Поскольку Dia экспортирует различных форматов , не составит труда импортировать в Visio .

1 голос
/ 12 января 2010

ах - вместо комментария, добавленного к моему первоначальному ответу - возможно, есть другие варианты

  • Visio "Обратный инженер базы данных" - и запустить его из макроса для автоматического запуска
  • как то так? Google DB Tool

должна ли ваша диаграмма отображать всю базу данных или только изменения?

1 голос
/ 09 января 2010

взгляните на DBSchema - это довольно хороший инструмент. он выводит ваш DDL в файлы каждый день, затем вы можете увидеть, что изменилось изо дня в день, с помощью простого сравнения текста. Ясно, что неявно, вы также получаете что-то, что вы могли бы также использовать для восстановления структуры вашей БД.

Если вы настаиваете на том, чтобы люди проверяли DDL в CVS, то вы также можете использовать его для обнаружения изменений, которые люди внесли в структуру db ad-hoc, без проверки в системе контроля версий.

Надеюсь, это поможет, Ace

...