- A extensão simplifica a escrita de consultas e o gerenciamento de banco de dados com IntelliSense baseado em IA e o agente ‘@pgsql’ do GitHub Copilot
- Oferece suporte a segurança integrada e gerenciamento de implantação em nuvem com autenticação Entra ID e integração com o Azure Database for PostgreSQL
- Foca em aumentar a produtividade e a eficiência dos desenvolvedores com visualização de esquema, gerenciamento de histórico de consultas e IntelliSense contextual
- Minimiza o custo de onboarding e de alternância entre tarefas com várias conexões de banco de dados, autenticação sem senha e uma UI intuitiva
Introdução
- A Microsoft anunciou a prévia pública de uma nova extensão PostgreSQL para o Visual Studio Code (VS Code)
- A extensão foi projetada para facilitar o gerenciamento de bancos de dados PostgreSQL e o fluxo de trabalho dos desenvolvedores em um único ambiente
- Sem sair do VS Code, os desenvolvedores podem gerenciar objetos do banco de dados, rascunhar consultas e contar com IntelliSense contextual e a ajuda do agente ‘@pgsql’ do GitHub Copilot.
Dificuldades enfrentadas pelos desenvolvedores e como resolver
- Segundo a pesquisa Stack Overflow Developer Survey 2024, 41% dos desenvolvedores enfrentam dificuldades com alternância de contexto
- O Stripe Developer Coefficient Report 2024 mostra que até 50% do tempo de desenvolvimento é gasto em depuração e resolução de problemas
- A ausência de uma ferramenta de extensão que integre o gerenciamento de banco de dados e o desenvolvimento de aplicações contribui para a ineficiência
- A nova extensão integra ferramentas de banco de dados Postgres e o @pgsql do GitHub Copilot para permitir desenvolvimento, gerenciamento e depuração em um só ambiente
- Dá suporte a segurança e administração centralizada com autenticação Entra ID e integração estreita com o Azure Database for PostgreSQL
Principais recursos
Visualização de esquema
- Ao clicar com o botão direito em itens do banco de dados no Object Explorer, é possível visualizar o esquema pela opção 'Visualize Schema'
GitHub Copilot com reconhecimento de banco de dados
- Fornece suporte de IA com reconhecimento do contexto PostgreSQL dentro do VS Code
- Simplifica consultas ao banco de dados em linguagem natural, otimização de esquema e execução de SQL
- Oferece análise e otimização de consultas com IA por meio do comando “@pgsql” e de menus de contexto como “Rewrite Query”, “Explain Query” e “Analyze Query Performance”
- Durante o desenvolvimento, fornece orientação em tempo real em nível especialista, além de recursos de segurança e melhoria de desempenho
Modo de agente de chat do Copilot
- O agente de chat inteligente baseado em conversa (@pgsql) vai além de perguntas e respostas e oferece suporte a tarefas em várias etapas
- Entende o contexto real do workspace e, com permissão, também pode escrever código e depurar
- Também é possível instruir em linguagem natural tarefas complexas, como criar bancos de dados e ativar extensões
- Alterações no banco de dados exigem permissão explícita do usuário
Conexão e gerenciamento de banco de dados
- Conecta-se com facilidade a instâncias PostgreSQL locais e na nuvem
- Simplifica múltiplos perfis de conexão, parsing de connection strings e configuração de informações de conexão
- Permite explorar e filtrar diretamente implantações do Azure Database for PostgreSQL
- Reforça a segurança e o gerenciamento de acesso ao banco com integração com Entra ID
Autenticação sem senha e segurança
- Oferece autenticação sem senha com Entra ID
- Não exige login manual e oferece renovação automática de token
- Minimiza timeout de autenticação e garante continuidade durante o desenvolvimento
- Compatível com padrões de segurança corporativos
- Permite usar credenciais Entra ID já existentes
- Não requer gerenciamento de contas separado
Explorador de banco de dados e histórico de consultas
- Permite verificar e gerenciar de forma estruturada objetos do banco de dados, como esquemas, tabelas e funções
- Suporta criação, modificação e exclusão de objetos
- O gerenciamento do histórico de consultas facilita reaproveitar consultas executadas anteriormente
Edição de consultas e IntelliSense contextual
- Oferece autocompletar para palavras-chave SQL, nomes de tabelas e nomes de funções, além de syntax highlighting
- Fornece formatação automática de consultas, gerenciamento de histórico e um ambiente de edição de fácil leitura
Diferenciais e pontos fortes
- Maior produtividade: IntelliSense contextual, formatação de SQL e outros recursos reduzem tempo de trabalho e erros
- Suporte inteligente com IA: o agente de chat do Copilot, com reconhecimento de banco de dados/workspace, oferece suporte em múltiplas etapas
- Onboarding rápido: com o gerenciador de conexões, até iniciantes podem configurar o ambiente em poucos minutos
- Segurança: controle de acesso centralizado com Entra ID e facilidade para explorar implantações no Azure
- Conjunto de ferramentas integrado: gerenciamento de objetos do banco, execução de consultas e até implantação de instâncias, tudo dentro do VS Code
- Compatível com a nuvem: a integração profunda com o Azure Database for PostgreSQL simplifica a operação de bancos de dados em nuvem
Como começar
- No Extensions Marketplace do VS Code, pesquise por 'PostgreSQL' e instale a Preview PostgreSQL extension (ícone de elefante azul)
- As extensões GitHub Copilot e Copilot chat são necessárias, e é possível interagir com o Copilot pelo comando "@pgsql"
Feedback e planos futuros
- É possível enviar opiniões e relatar problemas pela ferramenta de feedback dentro do VS Code
- A licença padrão de preview será atualizada no futuro
- Para mais informações e guia de início, consulte https://aka.ms/pg-vscode-docs
1 comentários
Comentários no Hacker News
Parabéns pelo lançamento da equipe. Compartilhando que fui uma das primeiras pessoas a demonstrar isso ao vivo na sessão patrocinada pela Microsoft na semana passada. O vídeo da demonstração pode ser visto aqui. Também houve uma sessão separada no estande da MSFT, mas a gravação ainda não foi publicada. Em vez disso, fica a informação de que existe um repositório aqui onde dá para reproduzir por conta própria todos os recursos que demonstrei. Se surgir algum problema, avisem a equipe aqui
Menciona que esta ferramenta também resolve um problema importante que ele já havia resolvido antes com um pacote npm feito por ele mesmo, chamado “pgstrap”. A ferramenta gera a estrutura do banco de dados em formato de diretórios, permitindo que o LLM (modelo de linguagem grande) use o schema do banco e facilitando ver claramente as mudanças nas tabelas durante code review. Ela gera um arquivo SQL para cada tabela do banco e organiza tudo em diretórios por schema. É uma ideia parecida com o
schema.rbdo Rails. Fica a reflexão sobre se é melhor o editor entender o banco de dados ou fazer commit do contexto no codebase. Com menos código/artefatos gerados, o codebase fica mais limpo. Mas nem todo mundo usa VS Code, e talvez nem saiba aproveitar essa integração. GUI de navegador de banco de dados nunca teve um vencedor absoluto no mercado. Ainda assim, por causa da participação dominante do VS Code, isso pode acabar virando o padrão para consultar banco dentro do ambiente de desenvolvimento. link do pgstrapPrimeira impressão de que essa ferramenta parece realmente muito legal. Surpresa por ver a Microsoft investir tanto numa ferramenta para Postgres em vez de SQL Server. A suposição é de que isso mostra que há muita demanda por Postgres
Decide que vai experimentar essa extensão. Diz que começou a carreira com SQL Server e que o SSMS combina perfeitamente com ele. Usa Postgres há quase 10 anos, mas confessa que nunca ficou satisfeito com ferramentas de administração/consulta como pgadmin, dbeaver e datagrip. Acha o próprio Postgres DBMS excelente e o SQL Server também, exceto pelo custo. Mas considera um mistério o fato de a comunidade não reclamar mais do ecossistema de ferramentas para Postgres
Diz que uma vantagem clara do JetBrains sobre o VSCode é oferecer ferramentas de banco embutidas e bem polidas
Conta que o Postico sempre foi sua ferramenta padrão para interagir com Postgres. Pergunta se algum usuário de Postico já testou a nova extensão
node-pg, o Copilot consiga reconhecer o schemaPergunta qual é atualmente a IDE mais “valiosa” da Microsoft. Compartilha a percepção de que, há alguns anos, o VSCode era divulgado como uma espécie de “Visual Studio para iniciantes”, mas hoje virou a “IDE” mais usada. Já o Visual Studio é visto mais como “legado” (embora ainda seja bom para C++ e .NET)
Pergunta se Microsoft Access e PostgreSQL estão se reencontrando depois de cerca de 30 anos
Pergunta se existe algo assim também para SQLite. Quer saber se cada banco precisa de uma extensão totalmente nova ou se há partes que poderiam ser compartilhadas
Diz que o VSCode até parece bem razoável, mas gostaria que houvesse um jeito fácil de espalhar o próprio VSCode por vários monitores. Hoje usa código em um monitor e a ferramenta de banco em outro monitor com o DataGrip