Глупый звуковой вопрос, я знаю... Позвольте мне сначала заложить основы.
Я успешно создал проект базы данных, состоящий из сотен таблиц, хранимых процедур, индексов, et.al. которые составляют нашу производственную базу данных.
Я успешно добавил решение для управления версиями (TFS).
Я сделал изменение (как тест) для некоторых объектов и сгенерировал развертывание script, и вся система очень впечатляет, я должен сказать. Но, похоже, сила VS 2010 с точки зрения БД - это развертывание, и не обязательно развитие.
Я полностью озадачен повседневным рабочим процессом, связанным с разработкой базы данных /TSQL с помощью Visual Studio. Предположим, мне нужно добавить несколько столбцов в таблицу и изменить связанные хранимые процедуры для возврата/обновления этих данных для этих столбцов.
Хотя достаточно легко изменить все сценарии в моей модели базы данных, я бы хотел, чтобы они могли изолировать их от базы данных dev, где я могу провести некоторое тестирование... Но это так же просто, как не обновлять proc, если он существует, без ручного изменения script на ALTER (или добавление кода DROP до CREATE). Необходимость делать это один или два раза не является проблемой, но в реальной среде разработчиков мы делаем это в течение всего дня.
Возможно, ответ заключается в частом развертывании сервера dev, поскольку я отлаживаю и вношу изменения в procs, например? Довольно немного накладных расходов; Я могу выполнить необходимые скрипты вручную через несколько секунд, создание и развертывание занимает несколько минут. Плюс, если трое из нас разворачивают различные изменения в Dev DB, не будем ли мы перезаписывать другие изменения?
Извините, что так долго, но я не могу не думать, что мне здесь что-то не хватает.
Существуют ли какие-либо книги/учебники/веб-семинары, демонстрирующие этот тип подхода к реальной разработке?