Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
O Schema Designer na extensão MSSQL para Visual Studio Code inclui integração com o GitHub Copilot, para que possa desenhar, modificar e validar esquemas de base de dados usando linguagem natural. Descreve o que precisas no painel de chat, e o GitHub Copilot traduz os teus pedidos em ações de esquema refletidas na tela do diagrama visual, no T-SQL gerado e nos destaques de alterações.
Sugestão
A integração do GitHub Copilot no Schema Designer está atualmente em pré-visualização e pode mudar consoante o feedback. Junte-se à comunidade no GitHub Discussions para partilhar ideias ou reportar problemas.
Características
A integração do GitHub Copilot no Schema Designer oferece as seguintes funcionalidades:
- Crie esquemas de base de dados a partir de descrições em linguagem natural, com tabelas, colunas e relações geradas automaticamente.
- Evoluir esquemas existentes adicionando, modificando ou removendo tabelas e colunas através de prompts conversacionais.
- Revise as alterações propostas pela IA individualmente através de um fluxo de revisão guiada, com a capacidade de aceitar ou desfazer cada edição.
- Veja um diferencial de esquema que mostra todas as alterações pendentes antes de serem aplicadas à base de dados.
- Bootstrap esquemas de aplicação numa base de dados vazia usando um único prompt em linguagem natural.
- Importar artefactos externos como dados JSON, documentos ou imagens e gerar elementos de esquema a partir deles.
- Validar alterações de esquema com limites de segurança para detetar chaves primárias em falta, tipos de dados inválidos e problemas de normalização.
Pré-requisitos
Antes de usar o GitHub Copilot no Schema Designer, certifique-se de que os seguintes requisitos são cumpridos:
- A extensão MSSQL para Visual Studio Code está instalada. Para as etapas de instalação, consulte a visão geral da extensão MSSQL para Visual Studio Code.
- As extensões GitHub Copilot e GitHub Copilot Chat estão instaladas e com sessão iniciada. Para instruções de configuração, consulte Configurar o GitHub Copilot.
- Uma ligação ativa à base de dados é estabelecida através da extensão MSSQL. Para os passos de ligação, veja Quickstart: Conectar-se e consultar uma base de dados com a extensão MSSQL para Visual Studio Code.
Abra o Schema Designer com o GitHub Copilot
Podes abrir o Schema Designer com o GitHub Copilot a partir de dois pontos de entrada:
No Object Explorer da extensão MSSQL, clique com o botão direito num nó da base de dados.
Selecione Schema Designer no menu de contexto.
Quando a tela do Schema Designer abrir com o esquema da base de dados carregado, selecione o botão Chat (com o ícone do GitHub Copilot) na barra de ferramentas Schema Designer para abrir uma sessão de chat do GitHub Copilot com âmbito no contexto atual do esquema.
Sugestão
Também pode clicar com o botão direito num nó da base de dados e selecionar Abrir em modo Agente Copilot para iniciar uma sessão de chat de agentes Copilot no GitHub. No modo agente, pode pedir ao GitHub Copilot para abrir o Schema Designer por si, por exemplo: "Open schema designer for AdventureWorksLT2022". Para mais informações, veja Quickstart: Use GitHub Copilot Agent Mode.
Criar um esquema com linguagem natural
Quando abres o painel de chat do GitHub Copilot no Schema Designer, podes descrever um esquema em inglês simples e vê-lo renderizado no diagrama visual.
Escreve uma descrição em linguagem natural do esquema que queres criar no painel de chat.
O GitHub Copilot gera as tabelas, colunas, chaves primárias e relações com chave estrangeira com base na tua descrição.
Observe a tela do diagrama visual à medida que se atualiza em tempo real para refletir o esquema gerado.
Aqui ficam alguns exemplos de prompts que pode experimentar:
"Build a library management system with tables for Books, Authors, Members, and BookLoans""Design an e-commerce schema with Products, Categories, Orders, OrderItems, and Customers""Create a blog platform with Users, Posts, Comments, and Tags with many-to-many relationships"
Evoluir um esquema existente
Começando a partir de um esquema existente, use o GitHub Copilot para o evoluir adicionando, modificando ou removendo tabelas e colunas. O diagrama, o código e as vistas diferenciais refletem estas mudanças em tempo real.
Aqui estão alguns exemplos de solicitações para evolução de esquemas:
"Add a description column of type NVARCHAR(500) to the Books table""Remove the ratings table from the schema""Rename the 'NumberOfPages' column in the Books table to 'PageCount'""Add booking/reservation support to this app schema""Change the data type of the Price column in Products from INT to DECIMAL(10,2)"
O diagrama visual atualiza-se quando aplicas uma alteração. As adições de colunas aparecem no cartão da tabela correta. Elementos removidos desaparecem do diagrama. O processo preserva todas as relações.
Revisão das alterações ao esquema
Depois de fazer edições de esquema através do GitHub Copilot ou da interface, reveja todas as alterações pendentes antes de as aplicar à base de dados.
Vista comparativa do esquema
Selecione o botão Mostrar Alterações na barra de ferramentas Schema Designer para abrir a vista diferencial. A vista diferencial exibe:
- Objetos adicionados, como tabelas, colunas e chaves estrangeiras, claramente marcados como Adicionados.
- Objetos removidos marcados como Removidos.
- Objetos modificados que mostram valores antes e depois para tipo de dado, anulabilidade, identidade, valores padrão e flags de chave.
- Nomes qualificados por esquema para todos os objetos, como
schema.tableeschema.column. - Uma opção Desfazer que aparece quando passa o rato sobre alterações individuais.
Revisão das alterações ao GitHub Copilot
Quando o GitHub Copilot aplica múltiplas edições de esquema, inicia automaticamente a revisão das Alterações do Copilot . Este fluxo guiado mostra-lhe cada edição proposta pela IA para que possa rever uma a uma:
- Avance e retroceda entre as alterações.
- Selecione Aceitar para manter uma alteração, ou Desfazer para a reverter.
- Selecione o emblema da propriedade num cartão de alteração para ver os valores detalhados antes e depois.
Selecione o emblema da propriedade num cartão de alteração para ver os valores detalhados antes e depois de cada propriedade modificada:
Inicializar um esquema do zero
O GitHub Copilot pode gerar esquemas completos de aplicação. Numa base de dados vazia, abra o Schema Designer com o painel de chat do GitHub Copilot e descreva um conceito de aplicação. O GitHub Copilot constrói o modelo de dados, incluindo tabelas, colunas, chaves primárias, chaves estrangeiras e relações.
Aqui estão alguns exemplos de sugestões para a inicialização de esquemas:
"Build a Twitter clone schema from scratch""Create a blog platform schema with users, posts, comments, and tags""Design an inventory management system with warehouses, products, stock levels, and suppliers""Generate a restaurant reservation system with tables for restaurants, menus, customers, and reservations"
Depois de o GitHub Copilot gerar o esquema inicial, pode continuar a evoluí-lo com prompts de seguimento como "Add a comments feature to this blog platform" ou "Add direct messaging to this Twitter clone".
Importação de artefactos externos
O GitHub Copilot pode aceitar contexto externo para gerar ou informar o design de esquemas. A entrada suportada inclui dados JSON, documentos, imagens ou qualquer formato que o GitHub Copilot suporte.
Aqui estão alguns exemplos de sugestões para importar os artefactos externos.
-
"Import this JSON and model it as tables"seguido de uma carga útil JSON -
"I have this API response format, create tables to store this data"seguido de um exemplo de resposta JSON - Anexe um documento ou imagem e pergunte:
"Create a schema based on this document"
Os objetos aninhados em JSON são modelados como tabelas relacionadas separadas. O Schema Designer infere tipos de dados a partir da entrada e cria relações de chave estrangeira para estruturas aninhadas.
Validação e proteções
À medida que os esquemas evoluem, o GitHub Copilot valida as alterações e assinala potenciais problemas de forma integrada. As verificações de validação incluem:
- Faltam chaves primárias nas tabelas.
- Tipos de dados inválidos ou não suportados para a plataforma SQL Server de destino.
- Problemas de normalização, como grupos repetidos armazenados numa única coluna.
- Nomes de colunas duplicados dentro da mesma tabela.
- Referências de chave estrangeira a tabelas ou colunas inexistentes.
O GitHub Copilot explica diretamente os problemas detetados e sugere ações corretivas antes de avançar com as alterações solicitadas.
Limitações
- Estado da sessão de chat: As sessões de chat não guardam o histórico quando mudas de contexto da base de dados. Um novo contexto reinicia a memória do chat.
- É necessária ligação ativa à base de dados: Precisa de uma ligação ativa à base de dados através da extensão MSSQL para carregar e modificar esquemas. Quando usas o GitHub Copilot em modo agente, o agente pode configurar a ligação por ti.
- A saída gerada por IA deve ser revista: o GitHub Copilot pode sugerir recomendações de esquema incorretas ou subótimas. Revise sempre o SQL gerado e as alterações de esquema antes de publicar na sua base de dados.
Comentários e suporte
Se você tiver ideias, comentários ou quiser se envolver com a comunidade, participe da discussão em https://aka.ms/vscode-mssql-discussions. Para reportar um bug, visite https://aka.ms/vscode-mssql-bug. Para solicitar um novo recurso, vá para https://aka.ms/vscode-mssql-feature-request.
Conteúdo relacionado
- Designer de Esquemas
- Início rápido: Use o explorador de esquemas e o designer
- Extensão GitHub Copilot for MSSQL para Visual Studio Code
- Início rápido: Usar o Modo Agente Copilot do GitHub
- Comparação de esquema
- Importação e exportação de aplicações por níveis de dados (DACPAC e BACPAC)
- Guia de início rápido: conectar-se e consultar um banco de dados com a extensão MSSQL para Visual Studio Code
- Documentação do Visual Studio Code
- Extensão MSSQL para repositório Visual Studio Code no GitHub