Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Base de dados SQL no Microsoft Fabric
Os scripts pré-implantação e pós-implementação são scripts SQL que são incluídos no projeto a serem executados durante a implementação. Os scripts pré/pós-implantação estão incluídos no .dacpac, mas não são compilados nem validados com o modelo de objetos do banco de dados. Um script de pré-implantação é executado antes que o plano de implantação seja executado, mas o plano de implantação é calculado antes da execução do script. Um script pós-implantação é executado após a conclusão do plano de implantação.
Exemplo de arquivo de projeto SQL e sintaxe
Um arquivo de projeto SQL pode ter um único script de pré-implantação e um único script de pós-implantação especificado.
O exemplo a seguir de um arquivo de projeto SQL adiciona o arquivo prep-db.sql como um script de pré-implantação.
...
<ItemGroup>
<PreDeploy Include="prep-db.sql" />
</ItemGroup>
O exemplo a seguir de um arquivo de projeto SQL adiciona o arquivo populate-app-settings.sql como script pós-implantação.
...
<ItemGroup>
<PostDeploy Include="populate-app-settings.sql" />
</ItemGroup>
</Project>
Múltiplos ficheiros podem ser executados como parte de um script pré-implantação ou pós-desdobramento usando um script SQLCMD que chama cada ficheiro por ordem.
:r .\scripts\script1.sql
:r .\scripts\script2.sql
Esses ficheiros devem ser excluídos da compilação do modelo de base de dados ao definir a propriedade Build Action para Remove nas propriedades do ficheiro no Visual Studio ou ao adicionar uma entrada para o ficheiro no ficheiro .sqlproj com o atributo Build definido para Remove. Quando o projeto SQL é construído, os ficheiros extra são combinados no script de pré-implementação ou de pós-implementação de referência no .dacpac pelo SDK do projeto Microsoft.Build.Sql.
...
<ItemGroup>
<Build Remove="scripts\script1.sql" />
<Build Remove="scripts\script2.sql" />
</ItemGroup>
</Project>
Em projetos SQL ao estilo SDK, adicionar uma Build Remove="path\file.sql" entrada remove completamente o ficheiro do projeto, o que faz com que deixe de aparecer na visualização do projeto Visual Studio Code. Para manter o ficheiro visível enquanto ainda o exclui da compilação de modelos, adicione-o novamente como um None item:
...
<ItemGroup>
<Build Remove="scripts\script1.sql" />
<None Include="scripts\script1.sql" />
<Build Remove="scripts\script2.sql" />
<None Include="scripts\script2.sql" />
</ItemGroup>
</Project>
Isto impede que o ficheiro seja compilado como parte do modelo da base de dados, mantendo-o visível no projeto.
Tip
Você pode validar os scripts de pré e pós-implantação após a compilação do projeto, alterando a extensão do ficheiro .dacpac para .zip e desarquivar o .zip para uma pasta. Um único .sql arquivo está presente para scripts de pré e pós-implantação e deve conter todo o conteúdo Transact-SQL de todos os arquivos referenciados no projeto SQL de origem.
Adicionar scripts pré-implantação e pós-implementação
No Gerenciador de Soluções, clique com o botão direito do mouse no projeto e selecione Adicionar>Script. Selecione Script de pré-implantação ou Script de pós-implantação.
O arquivo de script é adicionado ao projeto e aberto no editor de consultas, onde você pode concluir o script. Este script será executado antes ou depois da execução do plano de implementação, sempre que o projeto for implementado.
No Explorador de Soluções, clique com o botão direito no nó do projeto e selecione Adicionar>Novo Item. A janela de diálogo Adicionar Novo Item aparece, selecione Tabela Mostrar Todos os Modelos>, depois selecione Script Pré-Implementação ou Script Pós-Implementação.
O arquivo de script é adicionado ao projeto e aberto no editor de consultas, onde você pode concluir o script. Este script será executado antes ou depois da execução do plano de implementação, sempre que o projeto for implementado.
Na vista de Projetos de Base de Dados do Visual Studio Code ou Azure Data Studio, clique com o botão direito no projeto e selecione Adicionar Script Pré-Implementação ou Adicionar Script Pós-Implementação. Forneça um nome de script sem a extensão do arquivo.
O arquivo de script é adicionado ao projeto e aberto no editor de consultas, onde você pode concluir o script. Este script será executado antes ou depois da execução do plano de implementação, sempre que o projeto for implementado.
Edita o .sqlproj ficheiro diretamente para adicionar scripts pré-implantação ou pós-implementação. Adicione um <PreDeploy> ou <PostDeploy> item à <ItemGroup> seção do .sqlproj arquivo.
Por exemplo, para adicionar o script scripts\before-script.sql ao nosso projeto como um script de pré-implantação:
...
<ItemGroup>
<PreDeploy Include="scripts\before-script.sql" />
</ItemGroup>
Este script scripts\before-script.sql é executado antes do plano de implementação ser executado, sempre que o projeto é implementado.