Хранимая процедура SQL хранится в SVN? - PullRequest
2 голосов
/ 13 июля 2011

Есть ли способ резервного копирования / отслеживания изменений хранимых процедур SQL в SVN или каким-либо другим способом отслеживания изменений в SQL?Я использую SQL 2008 и не являюсь администратором баз данных, но отвечаю за базу данных небольших компаний.

TIA,

Брайан Эндерле

Ответы [ 4 ]

4 голосов
/ 13 июля 2011

Вы можете попробовать Контроль исходников SQL в Red Gate и Сравнение SQL для отслеживания изменений.

2 голосов
/ 13 июля 2011

Мы пишем проки и сохраняем их в Subversion как скрипты.Вы проверяете каждую версию скрипта, а затем можете легко увидеть предыдущие версии или провести различие между ними.Если вы хотите уменьшить количество ненужных различий при форматировании, получите инструмент форматирования SQL и попросите всех одинаково отформатировать перед регистрацией.

Весь код SQL должен обрабатываться таким образом, а не только процессами.Мы храним таблицы, представления и т. Д. В Subversion.Конечно, с таблицами у вас есть сценарий создания, а затем изменение сценариев таблиц таблиц для каждого изменения в порядке, чтобы вы не стирали наши таблицы с существующими данными, выполняя удаление и повторное создание.Мы также добавляем сценарии в таблицы поиска, чтобы упростить их перенос на другие серверы.

1 голос
/ 13 июля 2011

Вы можете сохранить его в svn, но будет трудно отследить точные изменения, если члены вашей команды используют разные инструменты для написания sql: postgresql кажется особенно плохим при форматировании sql.Вы могли бы рассмотреть возможность использования бесплатного форматера: Эдди Авад перечисляет некоторые из них здесь:

http://awads.net/wp/2005/12/12/format-your-sql-the-easy-way/

Передача вашего кода в систему управления версиями зависит от того, как вы расположите свои проекты: ваши сценарии могут существовать в "папка "misc" в проекте eclipse / visual studio или напрямую передана в svn через TortoiseSVN.

0 голосов
/ 13 июля 2011

У меня есть два предложения для вас (которые я использовал сам):

  1. вы можете использовать ScriptDB , чтобы извлечь схему базы данных в вашу файловую систему и затем зафиксировать ее в SVN. Я на самом деле настроил запланированное задание, которое каждую ночь вызывает ScriptDB, а затем автоматически фиксирует папку в svn (которая только фиксирует фактически измененные файлы).

  2. Если вы используете VS2010, вы можете открыть проект базы данных и периодически синхронизировать его с вашей базой данных с помощью опции сравнения схем в меню данных. После этого вы можете зафиксировать свои изменения через tortoiseSVN или Ankh напрямую из VS.

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