Общие сведения о сценариях предварительного и после развертывания
Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure базе данных SQL в Microsoft Fabric
Скрипты перед развертыванием и после развертывания — это скрипты SQL, включенные в проект, которые будут выполняться во время развертывания. Скрипты предварительного и после развертывания включены в .dacpac
состав, но они не компилируются в объектную модель базы данных или не проверяются. Скрипт предварительного развертывания выполняется перед выполнением плана развертывания, но план развертывания вычисляется перед выполнением скрипта. Скрипт после развертывания выполняется после завершения плана развертывания.
Пример и синтаксис файла проекта SQL
Файл проекта SQL может иметь один скрипт предварительного развертывания и один скрипт после развертывания.
В следующем примере из файла проекта SQL файл добавляется prep-db.sql
в качестве скрипта предварительного развертывания.
...
<ItemGroup>
<PreDeploy Include="prep-db.sql" />
</ItemGroup>
В следующем примере из файла проекта SQL файл добавляется populate-app-settings.sql
в качестве скрипта после развертывания.
...
<ItemGroup>
<PostDeploy Include="populate-app-settings.sql" />
</ItemGroup>
</Project>
Несколько файлов можно выполнять в рамках скрипта предварительного или после развертывания с помощью скрипта SQLCMD, который вызывает каждый файл в порядке.
:r .\scripts\script1.sql
:r .\scripts\script2.sql
Эти файлы следует исключить из сборки модели базы данных, задав Build Action
свойство None
в свойствах файла в Visual Studio или добавив запись для файла в .sqlproj
файле с заданным атрибутом Build
None
.
...
<ItemGroup>
<Build Remove="scripts\script1.sql" />
<Build Remove="scripts\script2.sql" />
</ItemGroup>
</Project>
Добавление скриптов до и после развертывания
В Обозреватель решений щелкните проект правой кнопкой мыши и выберите "Добавить>скрипт". Выберите скрипт предварительного развертывания или скрипт после развертывания.
Файл скрипта добавляется в проект и открывается в редакторе запросов, где можно завершить скрипт. Этот скрипт будет выполняться до или после выполнения плана развертывания при каждом развертывании проекта.
В Обозреватель решений щелкните правой кнопкой мыши узел проекта и выберите "Добавить", а затем "Создать элемент". Откроется диалоговое окно "Добавить новый элемент " и выберите "Показать все шаблоны". а затем таблица. Выберите скрипт предварительного развертывания или скрипт после развертывания.
Файл скрипта добавляется в проект и открывается в редакторе запросов, где можно завершить скрипт. Этот скрипт будет выполняться до или после выполнения плана развертывания при каждом развертывании проекта.
В представлении проектов баз данных VS Code или Azure Data Studio щелкните проект правой кнопкой мыши и выберите команду "Добавить скрипт предварительного развертывания" или "Добавить скрипт после развертывания". Укажите имя скрипта без расширения файла.
Файл скрипта добавляется в проект и открывается в редакторе запросов, где можно завершить скрипт. Этот скрипт будет выполняться до или после выполнения плана развертывания при каждом развертывании проекта.
Измените .sqlproj
файл непосредственно для добавления скриптов до или после развертывания. Добавьте элемент <PreDeploy>
или <PostDeploy>
элемент в <ItemGroup>
раздел .sqlproj
файла.
Например, чтобы добавить скрипт scripts\before-script.sql
в проект в качестве скрипта перед развертыванием:
...
<ItemGroup>
<PreDeploy Include="scripts\before-script.sql" />
</ItemGroup>
Этот скрипт scripts\before-script.sql
выполняется перед выполнением плана развертывания при каждом развертывании проекта.