Visão geral da plataforma de destino

Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure

A definição de plataforma de destino é uma propriedade do projeto usada durante a compilação do projeto para validar o suporte aos recursos incluídos nele, como sintaxe T-SQL e funções do sistema. A configuração da plataforma de destino é incorporada ao artefato de build .dacpac e, durante a implantação, a configuração da plataforma de destino é verificada em relação ao banco de dados de destino para garantir a compatibilidade. Se a plataforma de destino não corresponder ao banco de dados, a implantação não será iniciada, a menos que a propriedade de publicação /p:AllowIncompatiblePlatform=true seja especificada.

Exemplo e sintaxe do arquivo de projeto SQL

A propriedade de projeto da plataforma de destino está contida na marca DSP do arquivo .sqlproj sob o item <PropertyGroup>:

<Project DefaultTargets="Build">
  <Sdk Name="Microsoft.Build.Sql" Version="0.2.0-preview" />
  <PropertyGroup>
    <Name>AdventureWorks</Name>
    <DSP>Microsoft.Data.Tools.Schema.Sql.SqlAzureV12DatabaseSchemaProvider</DSP>
  </PropertyGroup>
...

Os valores válidos para a plataforma de destino na marca DSP incluem:

  • Microsoft.Data.Tools.Schema.Sql.Sql120DatabaseSchemaProvider (SQL Server 2014)
  • Microsoft.Data.Tools.Schema.Sql.Sql130DatabaseSchemaProvider (SQL Server 2016)
  • Microsoft.Data.Tools.Schema.Sql.Sql140DatabaseSchemaProvider (SQL Server 2017)
  • Microsoft.Data.Tools.Schema.Sql.Sql150DatabaseSchemaProvider (SQL Server 2019)
  • Microsoft.Data.Tools.Schema.Sql.Sql160DatabaseSchemaProvider (SQL Server 2022)
  • Microsoft.Data.Tools.Schema.Sql.SqlAzureV12DatabaseSchemaProvider (Banco de Dados SQL do Azure)
  • Microsoft.Data.Tools.Schema.Sql.SqlDbFabricDatabaseSchemaProvider (Banco de Dados SQL Espelhado do Fabric, versão prévia)
  • Microsoft.Data.Tools.Schema.Sql.SqlDwDatabaseSchemaProvider (Pool de SQL do Azure Synapse)
  • Microsoft.Data.Tools.Schema.Sql.SqlServerlessDatabaseSchemaProvider (Pool de SQL Sem Servidor do Azure Synapse)
  • Microsoft.Data.Tools.Schema.Sql.SqlDwUnifiedDatabaseSchemaProvider (Data Warehouse do Synapse no Microsoft Fabric)

Alterar a plataforma de destino

Para alterar a plataforma de destino de um projeto SQL no Visual Studio, clique com o botão direito do mouse no projeto no Gerenciador de Soluções e selecione Propriedades. Na guia Configurações do projeto da janela Propriedades, selecione a plataforma de destino desejada na lista suspensa Plataforma de destino.

Para alterar a plataforma de destino de um projeto SQL no Visual Studio, clique com o botão direito do mouse no projeto no Gerenciador de Soluções e selecione Propriedades. Na guia Configurações do projeto da janela Propriedades, selecione a plataforma de destino desejada na lista suspensa Plataforma de destino.

Para alterar a plataforma de destino de um projeto SQL na extensão Projetos do Banco de Dados SQL, clique com o botão direito do mouse no projeto na exibição Projetos de Banco de Dados e selecione Alterar plataforma de destino. Selecione a nova plataforma de destino na lista suspensa.

Como alternativa, você pode editar o arquivo .sqlproj diretamente para alterar a plataforma de destino. Abra o arquivo .sqlproj na exibição Explorer ou clicando com o botão direito do mouse no projeto na exibição Projetos de Banco de Dados e selecionando Editar Arquivo .sqlproj. No editor de texto, altere o valor na marca DSP para a plataforma de destino desejada.

Para criar um projeto SQL para uma plataforma de destino diferente da plataforma de destino especificada no arquivo.sqlproj, use o argumento de linha de comando /p:DSP=. Por exemplo, para criar um projeto SQL para compatibilidade com o SQL Server 2019:

dotnet build /p:DSP=Microsoft.Data.Tools.Schema.Sql.Sql150DatabaseSchemaProvider

Publicar em uma plataforma de destino diferente

Quando você publica um projeto SQL, a plataforma de destino do projeto deve corresponder à plataforma de destino do banco de dados. Se as plataformas de destino não corresponderem, a implantação será encerrada antes de aplicar qualquer alteração com um erro. Para publicar um projeto em um banco de dados com uma plataforma de destino diferente, use a propriedade de publicação /p:AllowIncompatiblePlatform=true.