Поделиться через


Общие сведения о сценариях предварительного и после развертывания

Область применения: 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 выполняется перед выполнением плана развертывания при каждом развертывании проекта.