Partilhar via


Extensão de projetos do Banco de Dados SQL

Importante

O Azure Data Studio será desativado em 28 de fevereiro de 2026. Recomendamos que você use Visual Studio Code. Para obter mais informações sobre como migrar para o Visual Studio Code, visite O que está acontecendo com o Azure Data Studio?

A extensão Projetos do Banco de Dados SQL é uma extensão do Visual Studio Code para desenvolver bancos de dados SQL em um ambiente de desenvolvimento baseado em projeto. Bases de dados compatíveis incluem SQL Server, Azure SQL Database, Azure SQL Managed Instance, Warehouse no Fabric e base de dados SQL no Fabric. Um projeto SQL é uma representação local de objetos SQL que compõem o esquema para um único banco de dados, como tabelas, procedimentos armazenados ou funções. Quando constróis um projeto de base de dados SQL, crias um .dacpac ficheiro. Pode atualizar bases de dados novas e existentes para corresponder ao conteúdo do .dacpac publicando o projeto SQL Database com a extensão SQL Database Projects ou publicando a interface de linha de comandos com .dacpac de SqlPackage.

Captura de tela de Resumo de projetos de banco de dados SQL contendo scripts de pré e pós-implantação, bem como objetos de banco de dados.

Para obter mais informações sobre conceitos de projetos SQL, consulte O que são projetos de banco de dados SQL?

Recursos de extensão

A extensão Projetos do Banco de Dados SQL fornece os seguintes recursos:

  • Crie um novo projeto Microsoft.Build.Sql em branco.
  • Crie um novo projeto a partir de um banco de dados conectado.
  • Abra um projeto criado anteriormente no Visual Studio Code ou no SQL Server Data Tools.
  • Edite um projeto adicionando ou removendo objetos (tabelas, exibições, procedimentos armazenados) ou scripts personalizados no projeto.
  • Organize ficheiros e scripts em pastas.
  • Adicione referências a bases de dados do sistema ou a um dacpac de utilizador.
  • Crie um único projeto.
  • Implante um único projeto.
  • Carregue detalhes de conexão (autenticação SQL Windows) e variáveis SQLCMD do perfil de implantação.

Install

Você pode instalar a extensão de projeto do banco de dados SQL no Visual Studio Code.

A extensão Projetos do Banco de Dados SQL é instalada com a extensão mssql para Visual Studio Code.

Dependências

A extensão SQL Database Projects depende do .NET SDK (obrigatório) e do AutoRest.SQL (opcional).

SDK para .NET

A extensão requer o SDK .NET para funcionalidade de compilação de projetos. Se a extensão não conseguir detetar uma versão suportada, pede para instalar o SDK .NET. Pode descarregar e instalar o SDK .NET para Windows, macOS e Linux.

Para verificar as versões atualmente instaladas do dotnet SDK, abra um terminal e execute o seguinte comando:

dotnet --list-sdks

Depois de instalar o SDK .NET, o seu ambiente está pronto para usar a extensão SQL Database Projects.

Problemas comuns

  • A ausência de nuget.org na lista de fontes pode resultar em mensagens de erro tais como:

    • error MSB4236: The SDK 'Microsoft.Build.Sql/0.1.9-preview' specified could not be found.

    • Unable to find package Microsoft.Build.Sql. No packages exist with this id in source(s): Microsoft Visual Studio Offline Packages

    Para verificar se nuget.org está registrado como uma fonte, execute dotnet nuget list source a partir da linha de comando e revise os resultados de um [Enabled] item referenciando nuget.org. Se nuget.org não estiver registrado como fonte, execute dotnet nuget add source https://api.nuget.org/v3/index.json -n nuget.org.

  • Versões do SDK .NET não suportadas podem resultar em mensagens de erro tais como:

    • error MSB4018: The "SqlBuildTask" task failed unexpectedly.

    • error MSB4018: System.TypeInitializationException: The type initializer for 'SqlSchemaModelStaticState' threw an exception. ---> System.IO.FileNotFoundException: Could not load file or assembly 'System.Runtime, Version=4.2.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. The system cannot find the file specified. [c:\Users\ .sqlproj]_ (onde o ficheiro inexistente vinculado tem um colchete de fechamento não correspondente).

    Podes forçar a extensão SQL Database Projects a usar a versão v6.x do SDK .NET quando várias versões estiverem instaladas. Para isso, adicione um ficheiroglobal.json à pasta que contém o projeto SQL.

Para mais informações sobre resolução de problemas de compilação de projetos SQL, consulte Resolução de Problemas de compilação de projetos SQL.

SQLCLR

O Visual Studio Code não suporta objetos SQLCLR em projetos de bases de dados, porque estes objetos dependem do .NET Framework, e a extensão SQL Database Projects usa o .NET para construir projetos.

Espaço de trabalho

Projetos de banco de dados SQL estão contidos em um espaço de trabalho lógico (pasta) no Visual Studio Code. Por padrão, pode aceder a todos os projetos SQL nas pastas abertas no espaço de trabalho atual através da vista Projetos de Base de Dados SQL.

Você pode adicionar e remover projetos manualmente de um espaço de trabalho por meio da interface no painel Projetos . Pode editar manualmente as definições de um espaço de trabalho no .code-workspace ficheiro, se necessário.

No ficheiro de exemplo .code-workspace seguinte, o folders array lista todas as pastas incluídas no painel do Explorador. O dataworkspace.excludedProjects array dentro settings lista todos os projetos SQL excluídos do painel de Projetos .

{
  "folders": [
    {
      "path": "."
    },
    {
      "name": "WideWorldImportersDW",
      "path": "..\\WideWorldImportersDW"
    }
  ],
  "settings": {
    "dataworkspace.excludedProjects": [
      "AdventureWorksLT.sqlproj"
    ]
  }
}