2

Я пытаюсь добавить некоторую хранимую процедуру в процесс сборки в visual studio (используя MSBuild).Выполнение скриптов из проекта базы данных в visual studio

У меня есть проект базы данных (* .dbp), добавленный в мое решение, однако в отличие от некоторых других проектов баз данных, доступных в VS, я не могу его создать или запустить. (Я считаю, что это файл проекта, который я хочу использовать при использовании SQL2000)

Как я могу заставить скрипты SQL работать при создании проекта? Я могу запустить сценарии, щелкнув правой кнопкой мыши и нажав кнопку пробега.

ответ

2

Проекты базы данных не построены, как обычные проекты. Если вы хотите выполнить скрипты внутри этого проекта, я бы посоветовал расширить связанные проекты (MS), совместимые с MSBuild (csproj, vbproj и т. Д.), И ссылаться/выполнять ваши сценарии с помощью вашего инструмента выбора.

Как вы реализуете это зависит от вас, например, вы можете подключить к цели и выполнить скрипты с помощью SqlExecute задачи.

FWIW, мы должны поддерживать SQL Server 2000, 2005, 2008+, поэтому задача становится намного сложнее; думаю, NVarchar (max) (2005+) и NText (2000+) плюс все переименования sp и т. д. между версиями. Нам также нужен один скрипт, который разработчики, QA и установщик использовали для обеспечения согласованности. Таким образом, наш подход был настраиваемым инструментом, который позволял заменять токены/ключевые слова внутри скриптов, что обеспечивает гибкость между различными версиями SQL Server и установками клиентов (например, данные пользователя/пользователя, имена db), а также интеграцию в различные технологии, поэтому скрипты могут запускаться из командной строки, MSBuild, пользовательские действия MSI с использованием проектов Wix или все, что нам нужно для их запуска.

1

Проекты базы данных могут быть построены.

Их нельзя запустить - их можно развернуть.

При развертывании проект строится, а затем развертывается. Код будет развернут вместе с сценариями Pre-Build и Post-Build, а также сценарии предварительного развертывания и после развертывания.

Итак, если вы хотите, чтобы сценарии запускались по мере того, как вы строили проект, вы хотите посмотреть в Pre-Build и Post-Build under Build Events в свойствах Project.

Смежные вопросы