Estou usando o PostgreSQL 8.4 no Ubuntu. Eu tenho uma tabela com colunas c1
completamente cN
. As colunas são largas o suficiente para que a seleção de todas as colunas faça com que uma linha de resultados da consulta seja quebrada várias vezes. Conseqüentemente, a saída é difícil de ler.
Quando os resultados da consulta constituem apenas algumas linhas, seria conveniente que eu pudesse visualizar os resultados da consulta, de modo que cada coluna de cada linha esteja em uma linha separada, por exemplo,
c1: <value of row 1's c1>
c2: <value of row 1's c1>
...
cN: <value of row 1's cN>
---- some kind of delimiter ----
c1: <value of row 2's c1>
etc.
Estou executando essas consultas em um servidor em que prefiro não instalar nenhum software adicional. Existe uma configuração psql que me permita fazer algo assim?
fonte
\x
sozinho alternará o valor, economizando três pressionamentos de tecla! (Útil quando você alterna rapidamente entre saídas amplas e estreitas).\G
Mysql, tente anexar\x\g\x
ao final da consulta ou defina o atalho na~/.psqlrc
adição\set G '\\set QUIET 1\\x\\g\\x\\set QUIET 0'
e use no final:G
. (nota falta de ponto e vírgula)\x on
" ou o equivalente na linha de comando? Seria bom se eu pudesse salvar (por exemplo, usando um alias do bash shell)psql --something
para que eu sempre tenha a opção ativada por padrão.-P expanded=auto
or--pset expanded=auto
(Novo) Modo automático expandido: \ x automático
Novo no Postgresql 9.2; O PSQL ajusta automaticamente os registros à largura da tela. anteriormente, você tinha o modo expandido ativado ou desativado e precisava alternar entre os modos, conforme necessário.
Para obter isso, use: \ x auto
Documentação do Postgresql 9.5 no comando PSQL.
Tela ampla, formatação normal:
Tela estreita, formatação expandida:
Como iniciar o psql com \ x auto?
Configure o
\x auto
comando na inicialização, adicionando-o à.psqlrc
sua pasta pessoal e reiniciando o psql. Consulte a seção 'Arquivos' no documento psql para obter mais informações .~ / .psqlrc
fonte
Você tem tantas opções, como você pode se confundir :-)? Os principais controles são:
Cada um tem opções e interações com os outros. As opções mais automáticas são:
A opção mais recente "\ x auto" muda para a exibição linha por linha apenas "se necessário".
O formato \ \ pset mais antigo é semelhante ao tentar ajustar os dados perfeitamente na tela, mas volta ao desalinhado se os cabeçalhos não couberem. Aqui está um exemplo de empacotado:
fonte
\x auto
com\pset pager off
é uma boa.\x off; \pset format wrapped
e\x auto
devem ser usados juntos ou são mutuamente exclusivos?Uma coisa interessante é que podemos ver as mesas horizontalmente, sem dobrar. nós podemos usar
PAGER
variáveis de ambiente. O psql faz uso dele. você pode definirou apenas
less -S
se já estiver disponível na linha de comando, se não estiver no local apropriado. -S para visualizar linhas desdobradas. você pode transmitir qualquer visualizador personalizado ou outras opções.Eu escrevi mais em Psql Horizontal Display
fonte
pspg
é uma ferramenta simples que oferece formatação avançada de tabela, rolagem horizontal, pesquisa e muitos outros recursos.atualize a
PAGER
variável, por exemplo, no seu~/.bashrc
onde
-s
significa esquema de cores (1-14
). Se você estiver usando repositórios pgdg, basta instalar um pacote (na distribuição semelhante ao Debian):fonte
Verifique também \ H, que ativa / desativa a saída HTML. Não é necessariamente fácil de ler no console, mas interessante para despejar em um arquivo (consulte \ o) ou colar em uma janela do editor / navegador para visualização, especialmente com várias linhas de dados relativamente complexos.
fonte
você pode usar o zenity para exibir a saída da consulta como tabela html.
primeiro implemente o script bash com o seguinte código:
cat> '/tmp/sql.op'; zenity --text-info --html - filename = '/ tmp / sql.op';
salve-o como mypager.sh
Em seguida, exporte a variável de ambiente PAGER configurando o caminho completo do script como valor.
por exemplo: - export PAGER = '/ path / mypager.sh'
Em seguida, efetue login no programa psql e execute o comando \ H
E, finalmente, execute qualquer consulta, a saída apresentada será exibida no zenity no formato de tabela html.
fonte