Partilhar via


Desenvolver projetos de armazém no Visual Studio Code

Aplica-se para:✅ Armazém no Microsoft Fabric

Saiba como configurar um projeto de banco de dados para o Fabric Data Warehouse no Visual Studio Code. Você criará um novo projeto, definirá objetos de esquema, compilará e validará o projeto e publicará para o seu armazém.

Pré-requisitos

Antes de começar, certifique-se de que:

  • Ter acesso a um item de Armazém existente num espaço de trabalho do Fabric com permissões de Colaborador ou superior.
  • Instale o Visual Studio Code em sua estação de trabalho.
  • Instale o SDK do .NET para criar e publicar projetos de banco de dados.
  • Instale duas extensões de código do Visual Studio: Projetos de Banco de Dados SQL e SQL Server (mssql).
    • Você pode instalar as extensões necessárias diretamente de dentro do Visual Studio Code marketplace pesquisando por "Projetos de Banco de Dados SQL" ou "SQL Server (mssql)".

Criar um novo projeto de banco de dados

Você pode criar um projeto de banco de dados do zero ou de um armazém de dados existente.

Opção 1: Criar um novo projeto de banco de dados a partir da paleta de comandos no Visual Studio Code

  1. Abra o Visual Studio Code.

  2. Abra a Paleta de Comandos (Ctrl+Shift+P ou Cmd+Shift+P no Mac).

  3. Pesquisar por Projetos de Banco de Dados: Novo.

  4. Selecione Tipo de Projeto de Banco de Dados como Banco de Dados do SQL Server.

  5. Escolha um nome de projeto e selecione o local da pasta local.

  6. Escolha Synapse Data Warehouse do Microsoft Fabric como a plataforma de destino.

  7. Quando solicitado, selecione Sim (recomendado) para um projeto no estilo SDK.

    Importante

    Somente projetos no estilo SDK são suportados para o Fabric Data Warehouse.

  8. Selecione Sim para a pergunta Deseja configurar a compilação do projeto SQL como a configuração de compilação padrão para esta pasta?

  9. Selecione Sim para confiar nos autores dos arquivos nesta pasta.

Opção 2: Criar um novo projeto de banco de dados a partir da extensão Projetos de Banco de Dados

  1. No Visual Studio Code, escolha o ícone de extensão Database Projects na barra de atividades.

  2. No painel Projetos de Banco de Dados , selecione Criar novo.

    Captura de tela do Visual Studio Code mostrando o painel de extensão Projetos de Banco de Dados e o botão Criar novo.

  3. Selecione Tipo de Projeto de Banco de Dados como Banco de Dados do SQL Server.

  4. Escolha um nome de projeto e selecione o local da pasta local.

  5. Escolha Synapse Data Warehouse do Microsoft Fabric como a plataforma de destino.

  6. Quando solicitado, selecione Sim (recomendado) para um projeto no estilo SDK. Somente projetos no estilo SDK são suportados para o Fabric Data Warehouse.

  7. Selecione Sim para a pergunta Deseja configurar a compilação do projeto SQL como a configuração de compilação padrão para esta pasta?

  8. Selecione Sim para confiar nos autores dos arquivos nesta pasta.

Opção 3: Criar um projeto de banco de dados a partir de um depósito existente

  1. Primeiro, crie um novo perfil de conexão para seu depósito no Visual Studio Code.

    1. Selecione a extensão do SQL Server no Visual Studio Code na barra de atividades.
    2. Forneça um nome de perfil. Escolha Parâmetros.
    3. Forneça o nome do servidor. No portal do Fabric, nas Configurações do seu armazém de dados, recupere a cadeia SQL Endpoint. (Isso é diferente do ponto de extremidade de análise SQL.) Parece que <server unique ID>.datawarehouse.fabric.microsoft.com. Este é o nome do servidor.
    4. Para tipo de autenticação, use Microsoft Entra ID - Universal com suporte MFA. Autentique-se com sua ID do Microsoft Entra.
    5. Forneça outras informações como padrão ou desejado e selecione Conectar.
  2. No Visual Studio Code, escolha o ícone de extensão Database Projects na barra de atividades.

  3. Selecione o botão ... de opções no painel Projetos de Banco de Dados e escolha a opção Criar Projeto a partir do Banco de Dados .

    Captura de tela do Visual Studio Code mostrando a opção Criar projeto do banco de dados.

  4. Escolha o seu armazém a partir dos perfis de ligação existentes.

  5. Forneça um nome de projeto e escolha uma pasta de projeto em sua estação de trabalho.

  6. Para estrutura de pastas, selecione Esquema/Tipo de objeto (recomendado).

  7. Em Incluir permissões no projeto, selecione Não (padrão).

  8. Para projeto no estilo SDK, selecione Sim (recomendado).

  9. Selecione Sim para a pergunta Deseja configurar a compilação do projeto SQL como a configuração de compilação padrão para esta pasta?

  10. Visual Studio Code extrai arquivos de projeto do projeto de depósito.

    Captura de tela do Visual Studio Code mostrando a notificação de progresso dos arquivos de projeto de extração.

  11. Após a extração bem-sucedida, você verá a seguinte notificação: "Extrair arquivos de projeto: bem-sucedido. Concluído".

  12. Selecione Sim para confiar nos autores dos arquivos nesta pasta.

Novo projeto de banco de dados para seu armazém

O novo projeto de banco de dados para seu depósito é exibido no menu Projetos do Banco de Dados SQL.

Captura de tela do Visual Studio Code mostrando o novo projeto de banco de dados para AdventureWorksDW2022.

A estrutura do seu projeto tem esta aparência:

 | Project Name
 ├── Database References
 ├── SQLCMD Variables
 ├── .vscode/
 └── schema/
     ├── Functions
     ├── Tables
     └── Views

Configurar o projeto de banco de dados

  1. Clique com o botão direito do mouse no projeto e selecione Editar arquivo .sqlproj.

    Captura de tela do Visual Studio Code e do menu de contexto de um projeto de banco de dados. A opção Edit sqlproj File é realçada.

  2. Verifique se a versão mais recente do Microsoft.Build.Sql SDK está no arquivo. Por exemplo, no arquivo .sqlproj, mude a versão de Microsoft.Build.Sql para 2.0.0.

       <Sdk Name="Microsoft.Build.Sql" Version="2.0.0" />
    
  3. Verifique a versão mais recente do Microsoft.SqlServer.Dacpacs.FabricDw e adicione uma referência dentro do nó XML Project/ItemGroup. Por exemplo:

       <PackageReference Include="Microsoft.SqlServer.Dacpacs.FabricDw" Version="170.0.2" />
    

    É assim que seu projeto de banco de dados para um depósito deve ficar após as atualizações.

     <?xml version="1.0" encoding="utf-8"?>
     <Project DefaultTargets="Build">
       <Sdk Name="Microsoft.Build.Sql" Version="2.0.0" />
       <PropertyGroup>
         <Name>DatabaseProject715wh</Name>
         <ProjectGuid>{2E278BCC-F118-4DDB-9255-94697F2930B4}</ProjectGuid>
         <DSP>Microsoft.Data.Tools.Schema.Sql.SqlDwUnifiedDatabaseSchemaProvider</DSP>
         <ModelCollation>1033, CI</ModelCollation>
       </PropertyGroup>
       <ItemGroup>
         <None Include=".vscode\tasks.json" />
         <PackageReference Include="Microsoft.SqlServer.Dacpacs.FabricDw" Version="170.0.2" />
       </ItemGroup>
       <Target Name="BeforeBuild">
         <Delete Files="$(BaseIntermediateOutputPath)\project.assets.json" />
       </Target>
     </Project>
    
  4. Salve seu .sqlproj arquivo. No prompt para recarregar seu projeto de banco de dados, selecione Sim.

Importante

A equipe do Fabric Data Warehouse frequentemente lança novas versões de pacotes NuGet. Como os valores de versão padrão no arquivo podem mudar ao longo do tempo, atualize-os no seu projeto local para permanecer alinhado com as versões mais recentes disponíveis no NuGet para .sqlproj.

Adicionar ou atualizar objetos de banco de dados

Você pode definir ou modificar objetos de banco de dados, como tabelas, exibições, procedimentos armazenados e funções em seu projeto de depósito.

Na pasta de um esquema, por exemplo dbo, adicione, elimine ou faça alterações nas definições T-SQL de objetos no seu armazém de dados. Para modificar um objeto existente, abra o arquivo correspondente .sql e atualize a definição conforme necessário.

Quando você cria o projeto, todos os objetos novos e atualizados são validados e incluídos no arquivo {project folder location}/bin/debug/{project name}.dacpac dacpac gerado.

As alterações feitas aqui são apenas para o projeto de banco de dados e não são refletidas no Microsoft Fabric até que você crie e publique seu projeto.

Construir e validar o projeto

  1. Abra o projeto de banco de dados se ainda não estiver aberto.

  2. Clique com o botão direito do mouse no projeto e selecione Construir para construir o projeto de banco de dados.

    Captura de tela do Visual Studio Code mostrando a opção para criar o projeto de banco de dados.

  3. A compilação deve ser bem-sucedida. Corrija quaisquer erros com base nas mensagens fornecidas na saída do evento build.

Observação

Atualmente, seu terminal padrão do Visual Studio Code deve ser o PowerShell para que o processo de compilação na extensão Database Projects seja bem-sucedido. Na Paleta de Comandos, escolha Terminal: Selecione Perfil Padrão e, em seguida, selecione PowerShell.

Publicar no Fabric Data Warehouse

Depois de construir seu projeto, publique-o em seu armazém de destino. A publicação cria um script para resolver a diferença entre o projeto de banco de dados e o armazém de dados real e executa um script para fazer com que o armazém de dados corresponda ao projeto. O modelo compilado do esquema de depósito em um arquivo .dacpac pode ser implantado em um depósito de destino.

  1. Clique com o botão direito do mouse no projeto e selecione Publicar.

  2. Escolha Publicar em um servidor SQL existente.

  3. Em Selecionar perfil de publicação para carregar, na primeira vez que publicar, escolha Não usar perfil.

    • Você pode salvar opções para publicar o seu armazém em um perfil de publicação. Quando terminares, terás a opção em uma notificação do Visual Studio Code para guardar as opções de publicação que acabaste de usar num ficheiro de perfil de publicação.
    • Você pode reutilizar o perfil de publicação no futuro ao publicar o projeto no armazém. Você pode ter diferentes opções de perfil para diferentes armazéns ou para ambientes diferentes nos seus ambientes de desenvolvimento/teste/aceitação/produção.
  4. Escolha o perfil de conexão do Fabric Data Warehouse na lista.

  5. Escolha o nome do armazém de destino.

  6. Na opção Escolher ação , você pode Gerar Script para revisar o script antes de publicar ou publicar o projeto em um depósito.

    • Na primeira vez que quiser implantar alterações, você deve cuidadosamente Gerar Script e revisar o T-SQL resultante a ser aplicado ao depósito de destino. Nenhuma alteração é feita no armazém de destino.
    • Se você escolher Publicar, as alterações serão gravadas no seu armazém de destino.

    Captura de tela do Visual Studio Code mostrando a notificação Deploy dacpac: In progress.

  7. Na notificação Gostaria de salvar as configurações em um perfil (.publish.xml)?, escolha Sim e salve suas opções de perfil de publicação para a próxima vez que precisar publicar.

Definições importantes de implementação para projetos em armazéns

Ao implementar projetos de bases de dados no Fabric Data Warehouse, várias definições controlam alterações de esquema e podem afetar a segurança dos dados. Use com cautela.

  • BlockOnPossibleDataLoss

    • O que faz: Impede a implementação se houver risco de perda de dados (por exemplo, eliminar uma coluna ou tabela que contenha dados).
    • Recomendação: Sempre definido para True em produção para proteger dados críticos.
    • Atenção: Definir para False permitir a implementação mesmo que os dados possam ser perdidos. Use apenas em ambientes controlados (por exemplo, desenvolvimento/teste).
  • DropObjectsNotInSource

    • O que faz: Elimina objetos na base de dados alvo que não estão presentes na fonte do projeto.
    • Recomendação: Uso em ambientes de desenvolvimento/teste para limpar objetos remanescentes.
    • Atenção: Usar DropObjectsNotInSource em produção pode eliminar objetos e dados importantes. Confirma duas vezes antes de ativar.
  • Pre-Deployment Scripts

    • O que faz: Executa scripts SQL personalizados antes da implementação do esquema.
    • Usos comuns:
      • Arquiver ou fazer backup dos dados antes de eliminar tabelas
      • Desativar temporariamente restrições ou gatilhos
      • Limpeza de objetos legados
    • Atenção: Garante que os scripts são idempotentes e não introduzem alterações de esquema que entrem em conflito com a implementação.

Sugestão

Quando um processo de implementação é idempotente, pode ser executado várias vezes sem causar problemas, e pode ser implementado em várias bases de dados sem precisar de pré-determinar o seu estado.

  • Post-Deployment Scripts

    • O que faz: Executa scripts SQL personalizados após a implementação do esquema.
    • Usos comuns:
      • Consulta ou dados de referência da semente
      • Reativar restrições ou gatilhos
      • Histórico de registo de implementações
    • Atenção: Evite operações pesadas em tabelas grandes em produção; assegure que os scripts podem ser executados em segurança várias vezes, se necessário.

Importante

Revê sempre scripts e definições de implementação antes de publicar. Teste primeiro em ambientes de desenvolvimento/teste para evitar perdas indesejadas de dados.

Verificar publicação

Conecte-se ao seu armazém e escreva scripts para os objetos que foram alterados ou verifique-os executando objetos do catálogo do sistema.