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.
A extensão PostgreSQL para o Visual Studio Code permite-lhe abrir sessões psql que ficam automaticamente ligadas às suas bases de dados e executar ficheiros .sql através de psql. Tens acesso total a funcionalidades nativas, incluindo comandos de barra invertida, fluxos de trabalho COPY e criação interativa de scripts, sem sair do editor.
A extensão passa automaticamente os detalhes da ligação (host, porta, base de dados, utilizador e palavra-passe psql ), para que possa começar a trabalhar imediatamente após abrir uma sessão.
Pré-requisitos
- Extensão PostgreSQL para Visual Studio Code instalada.
- Uma ligação ativa a um servidor PostgreSQL. Para os passos de configuração, veja Quickstart: Connect and consult PostgreSQL.
- O cliente de linha de comandos
psqlestá instalado no seu sistema. - Abra uma pasta de espaço de trabalho no Visual Studio Code.
Note
Se a extensão não conseguir localizar psql, mostra uma notificação de erro com um link para Saber Mais para a página de downloads do PostgreSQL. Também podes apontar a extensão para um local de instalação personalizado com a pgsql.pgBinaryDirs definição. Veja Configurar o caminho binário psql.
Escolha entre psql e o editor de consultas
A maioria dos fluxos de trabalho PostgreSQL utiliza ambas as ferramentas em momentos diferentes:
| Tool | Melhor para |
|---|---|
| Editor de consultas e IntelliSense | IntelliSense, resultados em formato gráfico, gráficos, histórico de consultas e exportação de resultados. |
psql Terminal |
Comandos com barra invertida, execução nativa de scripts, fluxos de trabalho com \copy e resolução de problemas no terminal. |
Abra um terminal ligado
Abra uma psql sessão que seja automaticamente ligada a uma base de dados específica. A extensão inicia psql com as opções -h, -p, -d e -U e define a variável de ambiente PGPASSWORD, pelo que não precisa de introduzir manualmente os detalhes de ligação.
- Na árvore Conexões , clique com o botão direito num nó da base de dados.
- Selecionar Ligar com PSQL.
Abre-se um terminal de tarefas do Visual Studio Code com psql ligado à base de dados selecionada. O separador do terminal tem o nome PSQL: <nome do perfil>.
Também pode executar este comando a partir da Paleta de Comandos (Ctrl+Shift+P / Cmd+Shift+P): procure por PGSQL: Conectar-se com PSQL.
Note
Para ligações ao Base de Dados do Azure para PostgreSQL que utilizam autenticação com o Microsoft Entra ID, a extensão valida o token de autenticação antes de iniciar psql e passa o token como palavra-passe. A tua sessão mantém-se ligada sem necessidade de reautenticação manual.
Executar um ficheiro SQL
Executa um ficheiro .sql através de psql, usando a ligação do editor ativo. A saída aparece num terminal de tarefas do Visual Studio Code.
- Abre um
.sqlficheiro no editor. - Liga o editor a uma base de dados se ainda não estiver ligado.
- Clique com o botão direito no editor e selecione Executar ficheiro com PSQL.
A extensão guarda o ficheiro e depois corre psql -f <filepath> contra a ligação ativa. Um terminal de tarefa abre-se para mostrar a saída da execução. O diretório de trabalho é definido como a pasta que contém o ficheiro, para que os caminhos relativos do script sejam corretamente resolvidos.
Importante
Guarda o ficheiro antes da execução. Se as alterações não guardadas não puderem ser guardadas, a extensão mostra uma mensagem que diz que o ficheiro deve ser guardado antes de executar comandos PSQL. A operação é cancelada.
Configurar o caminho binário psql
A extensão procura psql em três locais, por esta ordem:
- Binários agrupados: Ferramentas cliente PostgreSQL que vêm com a extensão, organizadas por versão.
-
Caminho do Sistema: diretórios listados na variável de ambiente do
PATHseu sistema operativo. -
Diretórios personalizados: caminhos que adicionas ao
pgsql.pgBinaryDirscenário.
Quando são encontradas várias versões, psql a extensão seleciona a versão que melhor corresponde à versão PostgreSQL do seu servidor. Se não existir uma correspondência exata, usa a versão disponível mais próxima.
Para adicionar um diretório binário personalizado:
-
Definições Abertas (
Ctrl+,/Cmd+,). - Procure por
pgsql.pgBinaryDirs. - Selecione Adicionar Item e introduza o caminho absoluto para o diretório que contém o
psqlbinário. - Reinicie o Visual Studio Code para que a alteração tenha efeito.
Gorjeta
No macOS com Homebrew, o caminho típico é /opt/homebrew/opt/postgresql@17/bin. No Windows, normalmente é C:\Program Files\PostgreSQL\17\bin.
Como a extensão inicia o psql
Quando seleciona Ligar com PSQL ou Executar ficheiro com PSQL, a extensão constrói a psql invocação da seguinte forma:
| Detalhe da ligação | Como a extensão o transmite |
|---|---|
Anfitrião (-h) |
Do endereço do servidor do perfil de ligação. |
Porto (-p) |
A partir da porta do perfil de ligação. A predefinição é 5432. |
Base de Dados (-d) |
O nó da base de dados selecionado, ou a base de dados padrão do perfil de ligação |
Utilizador (-U) |
O nome de utilizador do perfil de ligação; para o Microsoft Entra ID, o nome de utilizador ou endereço de email da Entra |
| Senha | Definido através da variável de ambiente PGPASSWORD; para o Microsoft Entra ID, o token de acesso renovado |
| Codificação de cliente | Definido através da variável de ambiente PGCLIENTENCODING (predefinido como UTF8) |
A extensão funciona psql como uma tarefa do Visual Studio Code, que se abre no painel do Terminal. O terminal de tarefas mantém-se aberto após psql sair para que possas rever a saída.
Casos de uso
O psql terminal é útil quando precisas de capacidades para além do editor de consultas incorporado:
-
Sessões SQL interativas: Execute comandos ad hoc e inspecione resultados num ambiente familiar
psql. -
Importação/exportação de grandes volumes de dados: Utilize os comandos
\copyouCOPYpara carregamento de dados de elevado desempenho. -
Tarefas administrativas: Gerir funções, permissões e configuração do servidor com acesso total
psql. -
Teste de scripts: Valide
.sqlscripts nativospsqlantes de os implementar. -
Comandos de barra invertida: Use
\dt,\d+,\timing,\xe outros comandos que não estão disponíveis no editor gráfico de consultas.
Tarefas comuns psql
Inspecionar objetos da base de dados
Use psql comandos de barra inversa para uma inspeção rápida do esquema:
\dt
\d+ public.orders
\dn
Estes comandos listam tabelas, mostram definições detalhadas de objetos e listam esquemas.
Ativar o tempo e a saída expandida
\timing on
\x on
SELECT * FROM public.orders LIMIT 5;
\timing Mostra a duração da consulta após cada instrução. A saída expandida (\x) torna as linhas largas mais fáceis de ler.
Carregar ou exportar dados com \copy
\copy public.customers FROM '/Users/example/customers.csv' WITH (FORMAT csv, HEADER true)
Use \copy para importação ou exportação em massa orientada a terminais, reutilizando o contexto de ligação gerido pela extensão.
Solucionar problemas
psql não encontrado
Se a extensão mostrar o erro "Não foi possível encontrar executável psql", experimente estes passos:
- Instale as ferramentas clientes do PostgreSQL para o seu sistema operativo a partir da página de downloads do PostgreSQL.
- Verifica se está
psqldisponível correndopsql --versionnum terminal de sistema. - Se
psqlestiver instalado num local não padrão, adicione o diretório àpgsql.pgBinaryDirsdefinição. Veja Configurar o caminho binário psql. - Reiniciar o Visual Studio Code.
Abrir uma pasta de espaço de trabalho
A extensão requer uma pasta de workspace aberta para iniciar psql. Se uma mensagem disser que tem de abrir uma pasta de espaço de trabalho, abre uma pasta com Ficheiro>Abrir Pasta e tenta novamente.
Autenticação ou falhas de ligação
Se psql abrir mas a ligação falhar:
- Confirma se o host, a porta e a base de dados estão corretos no teu perfil de ligação. Ver Ligações e identidade.
- Para a autenticação do Microsoft Entra ID, verifique se a sua conta ainda tem a sessão iniciada. A extensão atualiza os tokens automaticamente, mas sessões expiradas podem exigir reautenticação.
- Se usar SSL ou um túnel SSH, teste novamente a mesma ligação a partir do diálogo de ligação antes de reabrir
psql.
As alterações no ficheiro não são executadas
Quando executas um ficheiro com Run file com PSQL, a extensão guarda o ficheiro no disco antes da execução. Se a gravação falhar, a extensão cancela a operação. Guarde o ficheiro com sucesso antes de rever a saída.