Стоит ли хранить хранимые процедуры SQL в Source Control? - PullRequest
11 голосов
/ 20 февраля 2009

При разработке приложения с большим количеством хранимых процедур следует ли хранить их в какой-либо системе управления версиями исходного кода (например, source-safe, TFS, SVN)? Если так, то почему? И есть ли удобный способ сделать это с помощью SQL Server Management Studio?

Ответы [ 17 ]

0 голосов
/ 20 февраля 2009

Если вы не используете управление активами наряду с контролем источников, тогда я говорю, бросьте все в контроль источников. Изображения, текстовые документы, весь Шебанг. Не может его потерять, всегда может отменить любые изменения, и если какая-либо машина выйдет из строя - ничего не потеряно.

0 голосов
/ 20 февраля 2009

В SMO есть методы для генерации сценариев, если вы предпочитаете кодировать свой собственный инструмент сценариев.

http://www.sqlteam.com/article/scripting-database-objects-using-smo-updated

0 голосов
/ 20 февраля 2009

Как уже говорили другие, да, они должны быть.

Я не знаю простого способа сделать это с помощью SQL Server Management Studio, но если вы также используете Visual Studio, проекты баз данных - отличный способ справиться с этим.

0 голосов
/ 20 февраля 2009

Вы должны.

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

0 голосов
/ 20 февраля 2009

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

0 голосов
/ 20 февраля 2009

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

Management Studio можно связать с контролем версий, хотя у меня нет опыта в этом. Мы всегда отслеживали нашу SP / схему как файлы. Management Studio может автоматически генерировать сценарии изменений, которые очень полезны, поскольку удаление / воссоздание таблицы может быть слишком сложным для любой таблицы, в которой есть данные.

0 голосов
/ 20 февраля 2009

Мы храним наши процессы в Subversion, весь ваш код SQL, включая DDL, должен находиться в каком-то репозитории контроля версий

...