InglêsFrancêsEspanhol

favicon do OnWorks

psql - Online na Nuvem

Execute o psql no provedor de hospedagem gratuita OnWorks no Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS

Este é o comando psql que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas várias estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS

PROGRAMA:

NOME


psql - terminal interativo PostgreSQL

SINOPSE


psql [opção...] [nome do banco de dados [nome de usuário]]

DESCRIÇÃO


O psql é um front-end baseado em terminal para o PostgreSQL. Ele permite que você digite consultas
interativamente, emita-os para o PostgreSQL e veja os resultados da consulta. Alternativamente, insira
pode ser de um arquivo. Além disso, ele fornece uma série de meta-comandos e vários
recursos semelhantes ao shell para facilitar a escrita de scripts e automatizar uma ampla variedade de tarefas.

OPÇÕES


-a
--echo-tudo
Imprima todas as linhas de entrada não vazias na saída padrão à medida que são lidas. (Isto não
aplicar a linhas lidas interativamente.) Isso é equivalente a definir a variável ECHO para
todos.

-A
--sem alinhamento
Muda para o modo de saída desalinhado. (O modo de saída padrão é alinhado de outra forma.)

-b
--Echo-erros
Imprima comandos SQL com falha na saída de erro padrão. Isso equivale a definir o
variável ECHO aos erros.

-c comando
--command =comando
Especifica que o psql deve executar uma string de comando, comando, e depois saia. Isto é
útil em scripts de shell. Arquivos de inicialização (psqlrc e ~/.psqlrc) são ignorados com isso
opção.

comando deve ser uma string de comando que seja completamente analisável pelo servidor
(ou seja, não contém recursos específicos do psql), ou um único comando de barra invertida. Assim você
não pode misturar meta-comandos SQL e psql com esta opção. Para conseguir isso, você poderia
canalize a string para o psql, por exemplo: echo '\x \\ SELECT * FROM foo;' | psql. (\\ é
o meta-comando separador.)

Se a string de comando contiver vários comandos SQL, eles serão processados ​​em um único
transação, a menos que haja INÍCIO/COMPRAR comandos incluídos na string para
dividi-lo em várias transações. Isso é diferente do comportamento quando o
mesma string é alimentada na entrada padrão do psql. Além disso, apenas o resultado do último SQL
comando é retornado.

Por causa desses comportamentos legados, colocar mais de um comando no -c corda
muitas vezes tem resultados inesperados. É melhor alimentar vários comandos para o padrão do psql
entrada, usando echo como ilustrado acima, ou através de um shell here-document, para
exemplo:

psql <
\x
SELECIONE * DE foo;
EOF

-d nome do banco de dados
--dbname =nome do banco de dados
Especifica o nome do banco de dados ao qual se conectar. Isso é equivalente a especificar
nome do banco de dados como o primeiro argumento não opcional na linha de comando.

Se este parâmetro contém um sinal = ou começa com um prefixo URI válido (postgresql: //
ou postgres: //), é tratado como um informação fragmento. Consulte a Seção 31.1.1, “Conexão
Strings ”, na documentação para mais informações.

-e
--echo-queries
Copie todos os comandos SQL enviados ao servidor para a saída padrão também. Isto é
equivalente a definir a variável ECHO às consultas.

-E
--eco-oculto
Ecoar as consultas reais geradas por \d e outros comandos de barra invertida. Você pode usar isso
para estudar as operações internas do psql. Isso é equivalente a definir a variável
ECHO_HIDDEN para on.

-f nome do arquivo
--file =nome do arquivo
Use o arquivo nome do arquivo como fonte de comandos em vez de comandos de leitura
interativamente. Depois que o arquivo é processado, o psql termina. Isso é de muitas maneiras
equivalente ao meta-comando \i.

If nome do arquivo é - (hífen), então a entrada padrão é lida até que uma indicação EOF ou \q
meta-comando. Observe, no entanto, que Readline não é usado neste caso (como se -n tinha
especificado).

Usar esta opção é sutilmente diferente de escrever psql nome do arquivo. Em geral, tanto
fará o que você espera, mas usar -f habilita alguns recursos interessantes, como erro
mensagens com números de linha. Há também uma pequena chance de que usar esta opção
reduzir a sobrecarga de inicialização. Por outro lado, a variante usando a entrada do shell
redirecionamento é (em teoria) garantido para produzir exatamente a mesma saída que você teria
recebido se você tivesse digitado tudo à mão.

-F separator
--field-separator =separator
Use separator como o separador de campo para saída desalinhada. Isso é equivalente a \pset
campo or \f.

-h hostname
--host =hostname
Especifica o nome do host da máquina na qual o servidor está sendo executado. Se o valor
começa com uma barra, é usado como diretório para o soquete do domínio Unix.

-H
--html
Ative a saída tabular HTML. Isso é equivalente ao formato \pset html ou ao \H
comando.

-l
--Lista
Liste todos os bancos de dados disponíveis e saia. Outras opções de não conexão são ignoradas.
Isso é semelhante ao meta-comando \Lista.

-L nome do arquivo
--log-file =nome do arquivo
Gravar toda a saída da consulta no arquivo nome do arquivo, além da saída normal
destino.

-n
--sem linha de leitura
Não use Readline para edição de linha e não use o histórico de comandos. Isso pode ser
útil para desativar a expansão de guias ao recortar e colar.

-o nome do arquivo
--output =nome do arquivo
Coloque toda a saída da consulta no arquivo nome do arquivo. Isso é equivalente ao comando \o.

-p porta
--port =porta
Especifica a porta TCP ou a extensão de arquivo de soquete de domínio Unix local em que o
o servidor está escutando as conexões. O padrão é o valor de PGPORT meio Ambiente
variável ou, se não definido, para a porta especificada em tempo de compilação, geralmente 5432.

-P atribuição
--pset=atribuição
Especifica as opções de impressão, no estilo de \pset. Note que aqui você tem que separar
nome e valor com um sinal de igual em vez de um espaço. Por exemplo, para definir a saída
format para LaTeX, você pode escrever -P format=latex.

-q
--quieto
Especifica que o psql deve fazer seu trabalho silenciosamente. Por padrão, imprime mensagens de boas-vindas
e várias saídas informativas. Se esta opção for usada, nada disso acontece. Isto
é útil com o -c opção. Isso é equivalente a definir a variável QUIETO para on.

-R separator
--separador-registro=separator
Use separator como o separador de registro para saída desalinhada. Isso é equivalente ao
\pset gravação comando.

-s
--único passo
Execute no modo de etapa única. Isso significa que o usuário é avisado antes de cada comando ser enviado
para o servidor, com a opção de cancelar a execução também. Use isso para depurar scripts.

-S
--única linha
Executa no modo de linha única onde uma nova linha termina um comando SQL, como um ponto e vírgula
faz.

Note
Este modo é fornecido para aqueles que insistem nele, mas você não está necessariamente
incentivado a usá-lo. Em particular, se você misturar SQL e meta-comandos em uma linha
a ordem de execução pode nem sempre ser clara para o usuário inexperiente.

-t
--somente tuplas
Desative a impressão de nomes de colunas e rodapés de contagem de linhas de resultados, etc.
equivalente ao \t comando.

-T opções_tabela
--table-attr=opções_tabela
Especifica as opções a serem colocadas na tag de tabela HTML. Ver \pset para obter detalhes.

-U nome de usuário
--username =nome de usuário
Conecte-se ao banco de dados como o usuário nome de usuário em vez do padrão. (Você deve ter
permissão para fazê-lo, é claro.)

-v atribuição
--set =atribuição
--variable =atribuição
Execute uma atribuição de variável, como o \definir meta-comando. Observe que você deve separar
nome e valor, se houver, por um sinal de igual na linha de comando. Para desarmar uma variável,
deixe de fora o sinal de igual. Para definir uma variável com um valor vazio, use o sinal de igual
mas deixe de fora o valor. Essas atribuições são feitas durante um estágio muito inicial de
start-up, então as variáveis ​​reservadas para propósitos internos podem ser sobrescritas posteriormente.

-V
--versão
Imprima a versão do psql e saia.

-w
--nenhuma senha
Nunca emita um prompt de senha. Se o servidor exigir autenticação de senha e um
a senha não está disponível por outros meios, como um arquivo .pgpass, a conexão
tentativa falhará. Esta opção pode ser útil em trabalhos em lote e scripts onde nenhum usuário
está presente para inserir uma senha.

Observe que esta opção permanecerá definida para toda a sessão e, portanto, afeta os usos
do meta-comando \conectar bem como a tentativa de conexão inicial.

-W
--senha
Força o psql a solicitar uma senha antes de se conectar a um banco de dados.

Esta opção nunca é essencial, pois o psql solicitará automaticamente uma senha se
o servidor exige autenticação de senha. No entanto, o psql desperdiçará uma conexão
tente descobrir que o servidor deseja uma senha. Em alguns casos, vale a pena digitar
-W para evitar a tentativa de conexão extra.

Observe que esta opção permanecerá definida para toda a sessão e, portanto, afeta os usos
do meta-comando \conectar bem como a tentativa de conexão inicial.

-x
--expandido
Ative o modo de formatação de tabela expandida. Isso é equivalente ao \x comando.

-X,
--no-psqlrc
Não leia o arquivo de inicialização (nem o arquivo psqlrc de todo o sistema nem o arquivo do usuário
~/.psqlrc arquivo).

-z
--separador de campo-zero
Defina o separador de campo para saída desalinhada para um byte zero.

-0
--separador de registros-zero
Defina o separador de registro para saída desalinhada para um byte zero. Isso é útil para
interfaceamento, por exemplo, com xargs -0.

-1
- single-transaction
Quando o psql executa um script, adicionar esta opção envolve INÍCIO/COMPRAR em torno do roteiro
para executá-lo como uma única transação. Isso garante que todos os comandos
concluído com êxito ou nenhuma alteração é aplicada.

Se o próprio script usa INÍCIO, COMPRARou RECUPERAR, esta opção não terá a
efeitos desejados. Além disso, se o script contiver algum comando que não possa ser executado
dentro de um bloco de transação, especificar esta opção fará com que esse comando (e, portanto,
toda a transação) falhar.

-?
--ajuda[=tópico]
Mostre ajuda sobre o psql e saia. O opcional tópico parâmetro (padrão para opções)
seleciona qual parte do psql é explicada: comandos descrevem os comandos de barra invertida do psql;
options descreve as opções de linha de comando que podem ser passadas ao psql; e variáveis
mostra ajuda sobre as variáveis ​​de configuração do psql.

SAIR STATUS


psql retorna 0 para o shell se terminou normalmente, 1 se ocorrer um erro fatal próprio
(por exemplo, memória insuficiente, arquivo não encontrado), 2 se a conexão com o servidor foi ruim e o
sessão não foi interativa e 3 se ocorreu um erro em um script e a variável
ON_ERROR_STOP foi configurado.

USO


Conexão de para a banco de dados
O psql é um aplicativo cliente PostgreSQL comum. Para se conectar a um banco de dados, você
precisa saber o nome do banco de dados de destino, o nome do host e o número da porta do
servidor e com qual nome de usuário você deseja se conectar. psql pode ser informado sobre aqueles
parâmetros via opções de linha de comando, ou seja, -d, -h, -p e -U respectivamente. Se um
for encontrado um argumento que não pertence a nenhuma opção será interpretado como o
nome do banco de dados (ou o nome do usuário, se o nome do banco de dados já foi fornecido). Nem todos esses
opções são necessárias; existem padrões úteis. Se você omitir o nome do host, o psql
conectar-se por meio de um soquete de domínio Unix a um servidor no host local ou via TCP/IP ao host local
em máquinas que não possuem soquetes de domínio Unix. O número da porta padrão é determinado em
tempo de compilação. Como o servidor de banco de dados usa o mesmo padrão, você não precisará
especifique a porta na maioria dos casos. O nome de usuário padrão é o nome de usuário do sistema operacional,
como é o nome do banco de dados padrão. Observe que você não pode simplesmente se conectar a qualquer banco de dados em
qualquer nome de usuário. Seu administrador de banco de dados deve ter informado sobre seu acesso
direitos.

Quando os padrões não estão corretos, você pode economizar digitando configurando o
variáveis ​​ambientais PGDATABASE, PHOST, PGPORT e / ou PGUSER aos valores apropriados. (Por
variáveis ​​de ambiente adicionais, consulte a Seção 31.14, “Variáveis ​​de ambiente”, no
documentação.) Também é conveniente ter um ~ / .pgpass arquivo para evitar ter regularmente
para digitar senhas. Consulte a Seção 31.15, “O Arquivo de Senha”, na documentação para
Mais Informações.

Uma maneira alternativa de especificar parâmetros de conexão é em um informação string ou um URI,
que é usado em vez de um nome de banco de dados. Este mecanismo lhe dá um controle muito amplo sobre
a conexão. Por exemplo:

$ psql "serviço=meuserviço sslmode=requer"
$ psql postgresql://dbmaster:5433/mydb?sslmode=require

Desta forma, você também pode usar o LDAP para pesquisa de parâmetros de conexão conforme descrito na Seção
31.17, “Pesquisa LDAP de Parâmetros de Conexão”, na documentação. Consulte a Seção 31.1.2,
“Palavras-chave de parâmetros”, na documentação para mais informações sobre todas as
opções de conexão.

Se a conexão não puder ser feita por qualquer motivo (por exemplo, privilégios insuficientes, servidor
não estiver sendo executado no host de destino, etc.), o psql retornará um erro e terminará.

Se tanto a entrada padrão quanto a saída padrão são um terminal, o psql define o cliente
codificação para “auto”, que detectará a codificação do cliente apropriada da localidade
definições (LC_CTYPE variável de ambiente em sistemas Unix). Se isso não funcionar como
esperado, a codificação do cliente pode ser substituída usando a variável de ambiente
CODIFICAÇÃO PGCLIENTE.

entrando SQL comandos
Em operação normal, o psql fornece um prompt com o nome do banco de dados ao qual o psql está
atualmente conectado, seguido pela string =>. Por exemplo:

$ psql banco de teste
psql (9.5.2)
Digite "ajuda" para obter ajuda.

testdb=>

No prompt, o usuário pode digitar comandos SQL. Normalmente, as linhas de entrada são enviadas para o
servidor quando um ponto-e-vírgula de terminação de comando é alcançado. Um fim de linha não termina
um comando. Assim, os comandos podem ser distribuídos por várias linhas para maior clareza. Se o comando foi
enviado e executado sem erro, os resultados do comando são exibidos na tela.

Sempre que um comando é executado, o psql também pesquisa eventos de notificação assíncrona
gerado por OUÇA(7) e NOTIFICAR(7).

Enquanto os comentários de bloco no estilo C são passados ​​ao servidor para processamento e remoção,
Os comentários padrão SQL são removidos pelo psql.

Meta-Comandos
Qualquer coisa que você inserir no psql que comece com uma barra invertida sem aspas é um meta-comando do psql
que é processado pelo próprio psql. Esses comandos tornam o psql mais útil para administração
ou script. Os metacomandos são frequentemente chamados de comandos de barra ou barra invertida.

O formato de um comando psql é a barra invertida, seguida imediatamente por um verbo de comando,
então quaisquer argumentos. Os argumentos são separados do verbo de comando e entre si por
qualquer número de caracteres de espaço em branco.

Para incluir espaços em branco em um argumento, você pode citá-lo com aspas simples. Para incluir um
aspas simples em um argumento, escreva duas aspas simples dentro de um texto entre aspas simples. Nada
contido entre aspas simples está, além disso, sujeito a substituições semelhantes a C para \n (novo
linha), \t (tab), \b (backspace), \r (retorno de carro), \f (alimentação de formulário), \dígitos (octal),
e \xdígitos (hexadecimal). Uma barra invertida precedendo qualquer outro caractere entre aspas simples
texto cita esse único caractere, seja ele qual for.

Dentro de um argumento, o texto entre aspas (`) é considerado uma linha de comando
que é passado para o shell. A saída do comando (com qualquer nova linha à direita removida)
substitui o texto entre aspas.

Se dois pontos sem aspas (:) seguidos por um nome de variável psql aparecerem dentro de um argumento, ele
é substituído pelo valor da variável, conforme descrito em SQL Interpolation.

Alguns comandos usam um identificador SQL (como um nome de tabela) como argumento. Esses argumentos
siga as regras de sintaxe do SQL: letras sem aspas são forçadas para minúsculas, enquanto o dobro
aspas ("") protegem as letras da conversão de maiúsculas e minúsculas e permitem a incorporação de espaços em branco em
o identificador. Dentro de aspas duplas, aspas duplas emparelhadas se reduzem a uma única aspa dupla
no nome resultante. Por exemplo, FOO"BAR"BAZ é interpretado como fooBARbaz e "A
estranho"" nome" torna-se um nome estranho.

A análise de argumentos para no final da linha ou quando outra barra invertida sem aspas é
encontrado. Uma barra invertida sem aspas é considerada o início de um novo metacomando. O especial
sequência \\ (duas barras invertidas) marca o fim dos argumentos e continua analisando SQL
comandos, se houver. Dessa forma, os comandos SQL e psql podem ser misturados livremente em uma linha. Mas em qualquer
Nesse caso, os argumentos de um metacomando não podem continuar além do final da linha.

Os seguintes meta-comandos são definidos:

\a
Se o formato de saída da tabela atual estiver desalinhado, ele será alterado para alinhado. Se é
não desalinhado, é definido como desalinhado. Este comando é mantido para trás
compatibilidade. Ver \pset para uma solução mais geral.

\c ou \conectar [ nome do banco de dados [ nome de usuário ] [ hospedeiro ] [ porta ] ] | informação
Estabelece uma nova conexão com um servidor PostgreSQL. Os parâmetros de conexão a serem usados
pode ser especificado usando uma sintaxe posicional ou usando uma conexão conninfo
strings conforme detalhado na Seção 31.1.1, “Strings de conexão”, na documentação.

Ao usar parâmetros posicionais, se algum nome do banco de dados, nome de usuário, hospedeiro or porta são omitidos
ou especificado como -, o valor desse parâmetro da conexão anterior é usado;
se não houver conexão anterior, o padrão da libpq para o valor do parâmetro é
usava. Ao usar strings conninfo, nenhum valor da conexão anterior é usado para
a nova ligação.

Se a nova conexão for feita com sucesso, a conexão anterior será fechada. Se o
tentativa de conexão falhou (nome de usuário errado, acesso negado, etc.), o
a conexão só será mantida se o psql estiver em modo interativo. Ao executar um
script não interativo, o processamento será interrompido imediatamente com um erro. Isto
distinção foi escolhida como uma conveniência do usuário contra erros de digitação, por um lado, e uma
mecanismo de segurança que os scripts não estão agindo acidentalmente no banco de dados errado no
outra mão.

Exemplos:

=> \c mydb myuser host.dom 6432
=> \c serviço=foo
=> \c "host=localhost porta=5432 dbname=mydb connect_timeout=10 sslmode=disable"
=> \c postgresql://tom@localhost/mydb?application_name=myapp

\C[ título ]
Define o título de quaisquer tabelas sendo impressas como resultado de uma consulta ou desmarca qualquer
título. Este comando é equivalente a \pset title título. (O nome deste comando
deriva de “caption”, pois anteriormente era usado apenas para definir a legenda em um HTML
tabela.)

\CD [ anuário ]
Altera o diretório de trabalho atual para anuário. Sem argumentos, as mudanças no
diretório inicial do usuário atual.

Dica
Para imprimir seu diretório de trabalho atual, use \! pwd.

\conninfo
Gera informações sobre a conexão de banco de dados atual.

\cópia de { mesa [( column_list ) ] | ( pergunta ) } { de | para } { 'nome do arquivo' | programa
'comando' | padrão | stdout | pstdin | pstdout } [ [ com ] ( opção [, ...] ) ]
Executa uma cópia de frontend (cliente). Esta é uma operação que executa um SQL CÓPIA(7)
comando, mas em vez do servidor ler ou gravar o arquivo especificado, o psql lê
ou grava o arquivo e roteia os dados entre o servidor e o sistema de arquivos local.
Isso significa que a acessibilidade e os privilégios do arquivo são do usuário local, não do
servidor e nenhum privilégio de superusuário SQL é necessário.

Quando o programa é especificado, comando é executado pelo psql e os dados são passados ​​de ou para
comando é roteado entre o servidor e o cliente. Novamente, os privilégios de execução
são aqueles do usuário local, não do servidor, e nenhum privilégio de superusuário SQL é
necessário.

Para \copy ... from stdin, as linhas de dados são lidas da mesma fonte que emitiu o
comando, continuando até \. é lido ou o fluxo atinge EOF. Esta opção é útil
para preencher tabelas em linha dentro de um arquivo de script SQL. Para \copy ... para stdout,
a saída é enviada para o mesmo local que a saída do comando psql, e o comando COPY contar comando
status não é impresso (pois pode ser confundido com uma linha de dados). Para ler/escrever
a entrada ou saída padrão do psql, independentemente da fonte de comando atual ou da opção \o,
escreva de pstdin ou para pstdout.

A sintaxe deste comando é semelhante à do SQL CÓPIA(7) comando. Todas as opções
diferente da fonte/destino de dados são conforme especificado para CÓPIA(7). Devido a esta,
regras de análise especiais se aplicam ao \cópia de comando. Em particular, a variável do psql
regras de substituição e escapes de barra invertida não se aplicam.

Dica
Esta operação não é tão eficiente quanto o SQL CÓPIA comando porque todos os dados devem
passar pela conexão cliente/servidor. Para grandes quantidades de dados, o SQL
comando pode ser preferível.

\direito autoral
Mostra os termos de direitos autorais e distribuição do PostgreSQL.

\d[S+] [ de cinto de segurança ]
Para cada relação (tabela, exibição, índice, sequência ou tabela estrangeira) ou tipo composto
combinando com o de cinto de segurança, mostra todas as colunas, seus tipos, o tablespace (se não o
default) e quaisquer atributos especiais como NOT NULL ou defaults. Índices associados,
restrições, regras e gatilhos também são mostrados. Para tabelas estrangeiras, o associado
servidor estrangeiro também é mostrado. (“Correspondência do padrão” é definido em Padrões
abaixo.)

Para alguns tipos de relação, \d mostra informações adicionais para cada coluna: coluna
valores para sequências, expressão indexada para índices e opções de wrapper de dados estrangeiros
para mesas estrangeiras.

A forma de comando \d+ é idêntica, exceto que mais informações são exibidas: qualquer
são mostrados os comentários associados às colunas da tabela, assim como a presença de
OIDs na tabela, a definição da visão se a relação for uma visão, um não padrão
configuração de identidade de réplica.

Por padrão, apenas os objetos criados pelo usuário são mostrados; fornecer um padrão ou o modificador S para
incluir objetos do sistema.

Note
If \d é usado sem um de cinto de segurança argumento, é equivalente a \dtvsE qual vai
mostrar uma lista de todas as tabelas visíveis, visualizações, sequências e tabelas estrangeiras. Isto é
puramente uma medida de conveniência.

\da[S] [ de cinto de segurança ]
Lista funções agregadas, juntamente com seu tipo de retorno e os tipos de dados que eles
operar. Se de cinto de segurança for especificado, apenas agregados cujos nomes correspondem ao padrão são
mostrando. Por padrão, apenas os objetos criados pelo usuário são mostrados; fornecer um padrão ou o S
modificador para incluir objetos do sistema.

\db[+] [ de cinto de segurança ]
Lista espaços de tabela. Se de cinto de segurança for especificado, apenas tablespaces cujos nomes correspondem ao
padrão são mostrados. Se + for anexado ao nome do comando, cada tablespace será listado
com suas opções associadas, tamanho do disco, permissões e descrição.

\dc[S+] [ de cinto de segurança ]
Lista as conversões entre codificações de conjunto de caracteres. Se de cinto de segurança é especificado, apenas
as conversões cujos nomes correspondem ao padrão são listadas. Por padrão, apenas criado pelo usuário
objetos são mostrados; forneça um padrão ou o modificador S para incluir objetos do sistema. Se +
é anexado ao nome do comando, cada objeto é listado com seu
descrição.

\dC[+] [ de cinto de segurança ]
Lista casts de tipo. Se de cinto de segurança for especificado, somente casts cujos tipos de origem ou destino
correspondem ao padrão são listados. Se + for anexado ao nome do comando, cada objeto será
listados com sua descrição associada.

\dd[S] [ de cinto de segurança ]
Mostra as descrições de objetos de restrição de tipo, classe de operador, família de operador,
regra e gatilho. Todos os outros comentários podem ser visualizados pela respectiva barra invertida
comandos para esses tipos de objetos.

\dd exibe descrições para objetos que correspondem ao de cinto de segurança, ou de objetos visíveis de
o tipo apropriado se nenhum argumento for fornecido. Mas em ambos os casos, apenas objetos que
têm uma descrição são listados. Por padrão, apenas os objetos criados pelo usuário são mostrados; fornecem
um padrão ou o modificador S para incluir objetos do sistema.

Descrições de objetos podem ser criadas com o COMO(7) Comando SQL.

\ddp[ de cinto de segurança ]
Lista as configurações de privilégio de acesso padrão. Uma entrada é mostrada para cada função (e esquema,
se aplicável) para os quais as configurações de privilégios padrão foram alteradas do
padrões embutidos. Se de cinto de segurança for especificado, somente as entradas cujo nome de função ou esquema
nome corresponde ao padrão são listados.

O ALTER DEFAULT PRIVILEGES (ALTER_DEFAULT_PRIVILEGES(7)) é usado para definir
privilégios de acesso padrão. O significado da exibição de privilégios é explicado em
GRANT(7).

\dD[S+] [ de cinto de segurança ]
Lista domínios. Se de cinto de segurança for especificado, apenas domínios cujos nomes correspondem ao padrão são
mostrando. Por padrão, apenas os objetos criados pelo usuário são mostrados; fornecer um padrão ou o S
modificador para incluir objetos do sistema. Se + for anexado ao nome do comando, cada objeto
é listado com suas permissões e descrição associadas.

\dE[S+] [ de cinto de segurança ]
\di[S+] [ de cinto de segurança ]
\dm[S+] [ de cinto de segurança ]
\ds[S+] [ de cinto de segurança ]
\dt[S+] [ de cinto de segurança ]
\dv[S+] [ de cinto de segurança ]
Neste grupo de comandos, as letras E, i, m, s, t e v representam tabela estrangeira,
índice, visão materializada, sequência, tabela e visão, respectivamente. Você pode especificar qualquer
ou todas essas letras, em qualquer ordem, para obter uma lista de objetos desses tipos.
Por exemplo, \dit lista índices e tabelas. Se + for anexado ao nome do comando, cada
objeto é listado com seu tamanho físico no disco e sua descrição associada, se
algum. Se de cinto de segurança for especificado, apenas os objetos cujos nomes correspondem ao padrão serão listados.
Por padrão, apenas os objetos criados pelo usuário são mostrados; fornecer um padrão ou o modificador S para
incluir objetos do sistema.

\des[+] [ de cinto de segurança ]
Lista servidores externos (mnemônico: “servidores externos”). Se de cinto de segurança é especificado, apenas
os servidores cujo nome corresponde ao padrão são listados. Se a forma \des+ for usada, um
descrição completa de cada servidor é mostrada, incluindo a ACL do servidor, tipo, versão,
opções e descrição.

\det[+] [ de cinto de segurança ]
Lista tabelas externas (mnemônico: “tabelas externas”). Se de cinto de segurança é especificado, apenas
entradas cujo nome de tabela ou nome de esquema corresponde ao padrão são listadas. Se o formulário
\det+ é usado, opções genéricas e a descrição da tabela estrangeira também são exibidas.

\deu[+] [ de cinto de segurança ]
Lista mapeamentos de usuários (mnemônico: “usuários externos”). Se de cinto de segurança é especificado, apenas aqueles
mapeamentos cujos nomes de usuário correspondem ao padrão são listados. Se a forma \deu+ for usada,
informações adicionais sobre cada mapeamento são mostradas.

Cuidado
\deu+ também pode exibir o nome de usuário e a senha do usuário remoto, portanto, cuidado
devem ser tomadas para não divulgá-los.

\orvalho[+] [ de cinto de segurança ]
Lista wrappers de dados externos (mnemônico: “wrappers externos”). Se de cinto de segurança é especificado,
apenas os wrappers de dados externos cujo nome corresponde ao padrão são listados. Se o
formulário \dew+ é usado, a ACL, opções e descrição do wrapper de dados estrangeiros são
também mostrado.

\df[antwS+] [ de cinto de segurança ]
Lista funções, juntamente com seus argumentos, tipos de retorno e tipos de função,
que são classificados como “agg” (agregado), “normal”, “trigger” ou “window”. Para
exibir apenas funções de tipo(s) específico(s), adicionar as letras correspondentes a, n, t ou
w ao comando. Se de cinto de segurança for especificado, apenas as funções cujos nomes correspondem ao
padrão são mostrados. Por padrão, apenas os objetos criados pelo usuário são mostrados; fornecer um padrão
ou o modificador S para incluir objetos do sistema. Se o formulário \df+ for usado,
informações sobre cada função são mostradas, incluindo classificação de segurança,
volatilidade, proprietário, idioma, código fonte e descrição.

Dica
Para procurar funções que recebem argumentos ou retornam valores de um tipo específico, use
capacidade de pesquisa do seu pager para percorrer a saída \df.

\dF[+] [ de cinto de segurança ]
Lista as configurações de pesquisa de texto. Se de cinto de segurança for especificado, somente configurações cuja
nomes que correspondem ao padrão são mostrados. Se o formulário \dF+ for usado, uma descrição completa de
cada configuração é mostrada, incluindo o analisador de pesquisa de texto subjacente e o
lista de dicionários para cada tipo de token do analisador.

\dFd[+] [ de cinto de segurança ]
Lista os dicionários de pesquisa de texto. Se de cinto de segurança for especificado, apenas dicionários cujos nomes
correspondem ao padrão são mostrados. Se o formulário \dFd+ for usado, informações adicionais serão
mostrado sobre cada dicionário selecionado, incluindo o modelo de pesquisa de texto subjacente
e os valores das opções.

\dFp[+] [ de cinto de segurança ]
Lista analisadores de pesquisa de texto. Se de cinto de segurança for especificado, apenas analisadores cujos nomes correspondem ao
padrão são mostrados. Se o formulário \dFp+ for usado, uma descrição completa de cada analisador será
mostrado, incluindo as funções subjacentes e a lista de tipos de token reconhecidos.

\dFt[+] [ de cinto de segurança ]
Lista modelos de pesquisa de texto. Se de cinto de segurança for especificado, apenas modelos cujos nomes correspondem
o padrão é mostrado. Se o formulário \dFt+ for usado, informações adicionais serão mostradas
sobre cada modelo, incluindo os nomes das funções subjacentes.

\dg[+] [ de cinto de segurança ]
Lista as funções do banco de dados. (Uma vez que os conceitos de “usuários” e “grupos” foram unificados
em “roles”, este comando agora é equivalente a \du.) Se de cinto de segurança é especificado, apenas
as funções cujos nomes correspondem ao padrão são listadas. Se a forma \dg+ for usada,
informações adicionais são mostradas sobre cada função; atualmente isso adiciona o comentário para
cada papel.

\dl
Este é um apelido para \lo_list, que mostra uma lista de objetos grandes.

\dL[S+] [ de cinto de segurança ]
Lista linguagens procedurais. Se de cinto de segurança for especificado, apenas idiomas cujos nomes correspondem
o padrão são listados. Por padrão, apenas os idiomas criados pelo usuário são mostrados; fornecer o
Modificador S para incluir objetos do sistema. Se + for anexado ao nome do comando, cada
idioma é listado com seu manipulador de chamadas, validador, privilégios de acesso e se ele
é um objeto do sistema.

\dn[S+] [ de cinto de segurança ]
Lista esquemas (espaços de nomes). Se de cinto de segurança for especificado, apenas esquemas cujos nomes correspondem
o padrão são listados. Por padrão, apenas os objetos criados pelo usuário são mostrados; fornecer um
padrão ou o modificador S para incluir objetos do sistema. Se + for anexado ao comando
name, cada objeto é listado com suas permissões associadas e descrição, se houver.

\fazer[S+] [ de cinto de segurança ]
Lista os operadores com seus tipos de operando e resultado. Se de cinto de segurança é especificado, apenas
os operadores cujos nomes correspondem ao padrão são listados. Por padrão, apenas criado pelo usuário
objetos são mostrados; forneça um padrão ou o modificador S para incluir objetos do sistema. Se +
é anexado ao nome do comando, informações adicionais sobre cada operador são mostradas,
atualmente apenas o nome da função subjacente.

\dO[S+] [ de cinto de segurança ]
Lista agrupamentos. Se de cinto de segurança for especificado, somente agrupamentos cujos nomes correspondem ao
padrão são listados. Por padrão, apenas os objetos criados pelo usuário são mostrados; fornecer um padrão
ou o modificador S para incluir objetos do sistema. Se + for anexado ao nome do comando,
cada agrupamento é listado com sua descrição associada, se houver. Observe que apenas
agrupamentos utilizáveis ​​com a codificação do banco de dados atual são mostrados, então os resultados podem
variam em diferentes bancos de dados da mesma instalação.

\dp[ de cinto de segurança ]
Lista tabelas, visualizações e sequências com seus privilégios de acesso associados. Se de cinto de segurança
for especificado, apenas tabelas, visualizações e sequências cujos nomes correspondem ao padrão são
listados.

A GRANT(7) e REVOGAR(7) comandos são usados ​​para definir privilégios de acesso. O significado de
a exibição de privilégios é explicada em GRANT(7).

\drds[ padrão de função [ padrão de banco de dados ]]
Lista as definições de configuração definidas. Essas configurações podem ser específicas da função,
específico do banco de dados, ou ambos. padrão de função e padrão de banco de dados são usados ​​para selecionar
funções e bancos de dados específicos para listar, respectivamente. Se omitido ou se * for especificado,
todas as configurações são listadas, incluindo aquelas que não são específicas da função ou do banco de dados,
respectivamente.

O PAPEL ALTER (ALTER_ROLE(7)) e ALTER DATABASE (ALTER_DATABASE(7)) os comandos são
usado para definir as definições de configuração por função e por banco de dados.

\dT[S+] [ de cinto de segurança ]
Lista os tipos de dados. Se de cinto de segurança for especificado, apenas os tipos cujos nomes correspondem ao padrão
estão listadas. Se + for anexado ao nome do comando, cada tipo é listado com seu
nome e tamanho internos, seus valores permitidos se for um tipo enum e seus
permissões. Por padrão, apenas os objetos criados pelo usuário são mostrados; fornecer um padrão ou o
Modificador S para incluir objetos do sistema.

\du[+] [ de cinto de segurança ]
Lista as funções do banco de dados. (Uma vez que os conceitos de “usuários” e “grupos” foram unificados
em “roles”, este comando agora é equivalente a \dg.) Se de cinto de segurança é especificado, apenas
as funções cujos nomes correspondem ao padrão são listadas. Se a forma \du+ for usada,
informações adicionais são mostradas sobre cada função; atualmente isso adiciona o comentário para
cada papel.

\dx[+] [ de cinto de segurança ]
Lista as extensões instaladas. Se de cinto de segurança for especificado, apenas as extensões cujos nomes
correspondem ao padrão são listados. Se for usado o formulário \dx+, todos os objetos pertencentes a
cada extensão correspondente é listada.

\dy[+] [ de cinto de segurança ]
Lista acionadores de eventos. Se de cinto de segurança for especificado, apenas os acionadores de eventos cujos nomes
correspondem ao padrão são listados. Se + for anexado ao nome do comando, cada objeto será
listados com sua descrição associada.

\e ou \editar [ nome do arquivo ] [ número da linha ]
If nome do arquivo for especificado, o arquivo será editado; após o editor sair, seu conteúdo é
copiado de volta para o buffer de consulta. Se não nome do arquivo é fornecido, o buffer de consulta atual é
copiado para um arquivo temporário que é então editado da mesma forma.

O novo buffer de consulta é então analisado novamente de acordo com as regras normais do psql, onde
todo o buffer é tratado como uma única linha. (Assim, você não pode fazer scripts dessa maneira.
Use \i para isso.) Isso significa que se a consulta terminar com (ou contiver) um ponto e vírgula, ela
é executado imediatamente. Caso contrário, ele apenas aguardará no buffer de consulta; modelo
ponto e vírgula ou \g para enviá-lo, ou \r para cancelar.

Se um número de linha for especificado, o psql posicionará o cursor na linha especificada de
o arquivo ou buffer de consulta. Observe que se for fornecido um único argumento de todos os dígitos, o psql
assume que é um número de linha, não um nome de arquivo.

Dica
Veja em AMBIENTE como configurar e personalizar seu editor.

\eco texto [...]
Imprime os argumentos na saída padrão, separados por um espaço e seguidos por um
nova linha. Isso pode ser útil para intercalar informações na saída de scripts. Por
exemplo:

=> \eco `data`
Ter, 26 de outubro 21:40:57 CEST 1999

Se o primeiro argumento for um -n sem aspas, a nova linha à direita não será gravada.

Dica
Se você usar o \o comando para redirecionar sua saída de consulta que você pode querer usar
\qecho em vez deste comando.

\ef[ descrição da função [ número da linha ]]
Este comando busca e edita a definição da função nomeada, na forma de um
CRIAR OR SUBSTITUIR FUNÇÃO comando. A edição é feita da mesma forma que para \edit.
Após a saída do editor, o comando atualizado aguarda no buffer de consulta; digite ponto e vírgula
ou \g para enviá-lo, ou \r para cancelar.

A função de destino pode ser especificada apenas por nome ou por nome e argumentos, para
exemplo foo(inteiro, texto). Os tipos de argumento devem ser fornecidos se houver mais de um
função de mesmo nome.

Se nenhuma função for especificada, um espaço em branco CRIAR FUNÇÃO modelo é apresentado para
edição.

Se um número de linha for especificado, o psql posicionará o cursor na linha especificada de
o corpo da função. (Observe que o corpo da função normalmente não começa no primeiro
linha do arquivo.)

Dica
Veja em AMBIENTE como configurar e personalizar seu editor.

\codificando [ codificação ]
Define a codificação do conjunto de caracteres do cliente. Sem um argumento, este comando mostra o
codificação atual.

\f[ corda ]
Define o separador de campo para saída de consulta desalinhada. O padrão é a barra vertical
(|). Veja também \pset para uma maneira genérica de definir as opções de saída.

\g[ nome do arquivo ]
\g[ |comando ]
Envia o buffer de entrada da consulta atual para o servidor e, opcionalmente, armazena o
saída em nome do arquivo ou canaliza a saída para o comando shell comando. O arquivo ou
comando é escrito somente se a consulta retornar com sucesso zero ou mais tuplas, não
se a consulta falhar ou for um comando SQL sem retorno de dados.

Um \g nu é essencialmente equivalente a um ponto e vírgula. Um \g com argumento é um “one-shot”
alternativa ao \o comando.

\gconjunto [ prefixo ]
Envia o buffer de entrada da consulta atual para o servidor e armazena a saída da consulta em
variáveis ​​do psql (consulte Variáveis). A consulta a ser executada deve retornar exatamente uma linha.
Cada coluna da linha é armazenada em uma variável separada, nomeada da mesma forma que a
coluna. Por exemplo:

=> SELECIONE 'Olá' AS var1, 10 AS var2
-> \gconjunto
=> \eco :var1 :var2
ola 10

Se você especificar um prefixo, essa string é anexada aos nomes das colunas da consulta para
crie os nomes das variáveis ​​a serem usadas:

=> SELECIONE 'Olá' AS var1, 10 AS var2
-> \gconjunto resultado_
=> \eco :resultado_var1 :resultado_var2
ola 10

Se o resultado de uma coluna for NULL, a variável correspondente será desativada em vez de ser configurada.

Se a consulta falhar ou não retornar uma linha, nenhuma variável será alterada.

\h ou \ajuda [ comando ]
Fornece ajuda de sintaxe no comando SQL especificado. Se comando não for especificado, então o psql
irá listar todos os comandos para os quais a ajuda de sintaxe está disponível. Se comando é um
asterisco (*), a ajuda de sintaxe em todos os comandos SQL é mostrada.

Note
Para simplificar a digitação, comandos que consistem em várias palavras não precisam ser
citado. Assim é bom digitar \ajuda alterar mesa.

\H ou \html
Ativa o formato de saída da consulta HTML. Se o formato HTML já estiver ativado, ele é alternado
de volta ao formato de texto alinhado padrão. Este comando é para compatibilidade e
conveniência, mas veja \pset sobre a configuração de outras opções de saída.

\i ou \incluir nome do arquivo
Lê a entrada do arquivo nome do arquivo e executa-o como se tivesse sido digitado no
teclado.

If nome do arquivo é - (hífen), então a entrada padrão é lida até que uma indicação EOF ou \q
meta-comando. Isso pode ser usado para intercalar a entrada interativa com a entrada de arquivos.
Observe que o comportamento Readline será usado somente se estiver ativo no nível mais externo.

Note
Se você quiser ver as linhas na tela à medida que são lidas, você deve definir o
variável ECHO a todos.

\ir ou \include_relative nome do arquivo
O comando \ir é semelhante ao \i, mas resolve nomes de arquivos relativos de forma diferente. Quando
executando no modo interativo, os dois comandos se comportam de forma idêntica. No entanto, quando
invocado a partir de um script, \ir interpreta os nomes dos arquivos relativos ao diretório no qual
o script está localizado, em vez do diretório de trabalho atual.

\l[+] ou \list[+] [ de cinto de segurança ]
Liste os bancos de dados no servidor e mostre seus nomes, proprietários, conjunto de caracteres
codificações e privilégios de acesso. Se de cinto de segurança for especificado, apenas bancos de dados cujos nomes
correspondem ao padrão são listados. Se + for anexado ao nome do comando, tamanhos de banco de dados,
tablespaces padrão e descrições também são exibidas. (As informações de tamanho são apenas
disponível para bancos de dados aos quais o usuário atual pode se conectar.)

\lo_exportar loide nome do arquivo
Lê o objeto grande com OID loide do banco de dados e grava-o em nome do arquivo. Observação
que isso é sutilmente diferente da função do servidor lo_exportação, que atua com o
permissões do usuário que o servidor de banco de dados executa e no arquivo do servidor
sistema.

Dica
Use \lo_list para descobrir o OID do objeto grande.

\lo_importar nome do arquivo [ comentar ]
Armazena o arquivo em um objeto grande do PostgreSQL. Opcionalmente, associa o dado
comentar com o objeto. Exemplo:

foo=> \lo_importar '/home/peter/pictures/photo.xcf' 'a fotografia of mim'
lo_import 152801

A resposta indica que o objeto grande recebeu a ID de objeto 152801, que pode ser
usado para acessar o objeto grande recém-criado no futuro. Por uma questão de
legibilidade, recomenda-se sempre associar um comentário legível a cada
objeto. Ambos OIDs e comentários podem ser visualizados com o \lo_list comando.

Observe que este comando é sutilmente diferente do lado do servidor lo_importação porque
atua como o usuário local no sistema de arquivos local, em vez do usuário do servidor e
sistema de arquivo.

\lo_list
Mostra uma lista de todos os objetos grandes do PostgreSQL atualmente armazenados no banco de dados, junto
com quaisquer comentários fornecidos para eles.

\lo_desvincular loide
Exclui o objeto grande com OID loide do banco de dados.

Dica
Use \lo_list para descobrir o OID do objeto grande.

\o ou \out [ nome do arquivo ]
\o ou \out [ |comando ]
Organiza para salvar os resultados da consulta futura no arquivo nome do arquivo ou canalizar resultados futuros para
o comando shell comando. Se nenhum argumento for especificado, a saída da consulta será redefinida para
a saída padrão.

"Resultados da consulta" inclui todas as tabelas, respostas de comando e avisos obtidos do
servidor de banco de dados, bem como a saída de vários comandos de barra invertida que consultam o
banco de dados (como \d), mas não mensagens de erro.

Dica
Para intercalar a saída de texto entre os resultados da consulta, use \qecho.

\p ou \imprimir
Imprima o buffer de consulta atual na saída padrão.

\senha [ nome de usuário ]
Altera a senha do usuário especificado (por padrão, o usuário atual). Isto
O comando solicita a nova senha, a criptografa e a envia ao servidor como
ALTERAR FUNÇÃO comando. Isso garante que a nova senha não apareça em texto simples
no histórico de comandos, no log do servidor ou em outro lugar.

\mensagem [ texto ] nome
Solicita que o usuário forneça o texto, que é atribuído à variável nome. Um opcional
seqüência de prompt, texto, pode ser especificado. (Para prompts de várias palavras, coloque o texto entre
aspas simples.)

Por padrão, \prompt usa o terminal para entrada e saída. No entanto, se o -f comando
line switch foi usado, \prompt usa entrada padrão e saída padrão.

\pset[ opção [ valor ]]
Este comando define as opções que afetam a saída das tabelas de resultados da consulta. opção
indica qual opção deve ser definida. A semântica de valor variam dependendo do
opção selecionada. Para algumas opções, omitir valor faz com que a opção seja alternada ou
não definido, conforme descrito na opção específica. Se tal comportamento não for mencionado,
então omitindo valor apenas resulta na exibição da configuração atual.

\pset sem nenhum argumento exibe o status atual de todas as opções de impressão.

As opções de impressão ajustáveis ​​são:

fronteira
A valor deve ser um número. Em geral, quanto maior o número, mais fronteiras e
linhas que as tabelas terão, mas os detalhes dependem do formato específico. Em HTML
formato, isso será traduzido diretamente para o atributo border=.... Na maioria dos outros
formata apenas os valores 0 (sem borda), 1 (linhas divisórias internas) e 2 (tabela
frame) fazem sentido, e valores acima de 2 serão tratados da mesma forma que border = 2. O
Os formatos latex e latex-longtable permitem adicionalmente um valor de 3 para adicionar
linhas entre as linhas de dados.

colunas
Define a largura de destino para o formato encapsulado e também o limite de largura para
determinar se a saída é ampla o suficiente para exigir o pager ou alternar para o
exibição vertical no modo automático expandido. Zero (o padrão) faz com que a largura do alvo
ser controlado pela variável de ambiente COLUNAS, ou a largura da tela detectada
if COLUNAS não está definido. Além disso, se as colunas forem zero, o formato encapsulado
afeta apenas a saída da tela. Se as colunas forem diferentes de zero, a saída do arquivo e do canal será
envolto nessa largura também.

expandido (ou x)
If valor for especificado, ele deve estar ligado ou desligado, o que habilitará ou desabilitará
modo expandido ou automático. Se valor é omitido, o comando alterna entre on e
desativa as configurações. Quando o modo expandido está ativado, os resultados da consulta são exibidos em duas
colunas, com o nome da coluna à esquerda e os dados à direita. Este modo é
útil se os dados não couberem na tela no modo “horizontal” normal. Dentro
a configuração automática, o modo expandido é usado sempre que a saída da consulta for mais ampla
do que a tela, caso contrário, o modo regular é usado. A configuração automática só é
eficaz nos formatos alinhados e encapsulados. Em outros formatos, sempre se comporta
como se o modo expandido estivesse desligado.

campo
Especifica o separador de campo a ser usado no formato de saída desalinhado. Desse jeito um
pode criar, por exemplo, saída separada por tabulação ou vírgula, que outros programas
pode preferir. Para definir uma guia como separador de campo, digite \pset fieldsep '\t'. O
separador de campo padrão é '|' (uma barra vertical).

fieldep_zero
Define o separador de campo a ser usado no formato de saída desalinhado para um byte zero.

rodapé
If valor for especificado, deve estar ligado ou desligado, o que irá habilitar ou desabilitar
exibição do rodapé da tabela (o (n linhas) contagem). Se valor é omitido o comando
ativa ou desativa a exibição do rodapé.

formato
Define o formato de saída como desalinhado, alinhado, encapsulado, html, asciidoc,
latex (usa tabular), latex-longtable ou troff-ms. As abreviaturas únicas são
permitido. (Isso significaria que uma letra é suficiente.)

formato desalinhado grava todas as colunas de uma linha em uma linha, separadas pelo
separador de campo atualmente ativo. Isso é útil para criar saídas que podem ser
destinado a ser lido por outros programas (por exemplo, separadores ou
formato separado por vírgulas).

formato alinhado é a saída de texto padrão, legível e bem formatada; isto
é o padrão.

formato empacotado é como alinhado, mas empacota valores de dados amplos em linhas para tornar o
saída se encaixa na largura da coluna de destino. A largura do alvo é determinada conforme descrito
na opção de colunas. Observe que o psql não tentará quebrar o cabeçalho da coluna
títulos; portanto, o formato encapsulado se comporta da mesma forma que alinhado se a largura total
necessário para cabeçalhos de coluna excede o destino.

Os formatos html, asciidoc, latex, latex-longtable e troff-ms publicam tabelas
que se destinam a ser incluídos em documentos usando a respectiva marcação
língua. Não são documentos completos! Isso pode não ser necessário em HTML,
mas no LaTeX você deve ter um wrapper de documento completo. látex-longtable também
requer os pacotes LaTeX longtable e booktabs.

estilo de linha
Define o estilo de desenho da linha de borda como ascii, old-ascii ou unicode. Único
abreviações são permitidas. (Isso significaria que uma letra é suficiente.) O padrão
configuração é ascii. Esta opção afeta apenas os formatos de saída alinhados e agrupados.

o estilo ascii usa caracteres ASCII simples. As novas linhas nos dados são mostradas usando um +
símbolo na margem direita. Quando o formato encapsulado envolve dados de uma linha
para o próximo sem um caractere de nova linha, um ponto (.)
margem da primeira linha e novamente na margem esquerda da linha seguinte.

estilo old-ascii usa caracteres ASCII simples, usando o estilo de formatação usado em
PostgreSQL 8.4 e anteriores. Novas linhas nos dados são mostradas usando um símbolo : no lugar
do separador de coluna à esquerda. Quando os dados são quebrados de uma linha para a
next sem um caractere de nova linha, a ; símbolo é usado no lugar da mão esquerda
separador de coluna.

estilo unicode usa caracteres de desenho de caixa Unicode. Novas linhas nos dados são mostradas
usando um símbolo de retorno de carro na margem direita. Quando os dados são encapsulados
de uma linha para a próxima sem um caractere de nova linha, um símbolo de reticências é mostrado
na margem direita da primeira linha, e novamente na margem esquerda da
a seguinte linha.

Quando a configuração da borda é maior que zero, a opção de estilo de linha também determina
os caracteres com os quais as linhas de borda são desenhadas. Caracteres ASCII simples funcionam
em todos os lugares, mas os caracteres Unicode ficam mais bonitos em telas que os reconhecem.

nulo
Define a string a ser impressa no lugar de um valor nulo. O padrão é imprimir
nada, que pode ser facilmente confundido com uma string vazia. Por exemplo, pode-se
prefira \pset null '(null)'.

local numérico
If valor for especificado, deve estar ligado ou desligado, o que irá habilitar ou desabilitar
exibição de um caractere específico de localidade para separar grupos de dígitos à esquerda de
o marcador decimal. Se valor é omitido o comando alterna entre regular e
saída numérica específica da localidade.

pager
Controla o uso de um programa pager para consulta e saída de ajuda do psql. Se o ambiente
variável PAGER é definido, a saída é canalizada para o programa especificado. Caso contrário, um
padrão dependente da plataforma (como mais) é usado.

Quando a opção de pager está desativada, o programa de pager não é usado. Quando a opção de pager
está ligado, o pager é usado quando apropriado, ou seja, quando a saída é para um terminal
e não vai caber na tela. A opção de pager também pode ser configurada para sempre, o que
faz com que o pager seja usado para todas as saídas do terminal, independentemente de caber
na tela. \pset pager sem um valor liga e desliga o uso do pager.

pager_min_lines
Se pager_min_lines for definido como um número maior que a altura da página, o pager
programa não será chamado a menos que haja pelo menos este número de linhas de saída para
exposição. A configuração padrão é 0.

gravação
Especifica o separador de registro (linha) a ser usado no formato de saída desalinhado. O
o padrão é um caractere de nova linha.

registrosep_zero
Define o separador de registro a ser usado no formato de saída desalinhado para um byte zero.

tableattr (ou T)
No formato HTML, especifica os atributos a serem colocados dentro da tag da tabela. Isto
poderia, por exemplo, ser cellpadding ou bgcolor. Observe que você provavelmente não quer
especifique border aqui, pois isso já foi resolvido por \pset border. Se não valor
for fornecido, os atributos da tabela não serão definidos.

No formato latex-longtable, controla a largura proporcional de cada coluna
contendo um tipo de dados alinhado à esquerda. É especificado como um espaço em branco separado
lista de valores, por exemplo, '0.2 0.2 ​​0.6'. Colunas de saída não especificadas usam o último
valor especificado.

título
Define o título da tabela para quaisquer tabelas impressas posteriormente. Isso pode ser usado para dar
suas tags descritivas de saída. Se não valor é dado, o título não é definido.

tuplas_only (ou t)
If valor for especificado, deve estar ligado ou desligado, o que irá habilitar ou desabilitar
modo somente tuplas. Se valor é omitido o comando alterna entre regular e
saída somente de tuplas. A saída regular inclui informações extras, como coluna
cabeçalhos, títulos e vários rodapés. No modo somente tuplas, apenas dados reais da tabela
é mostrado.

unicode_border_linestyle
Define o estilo de desenho de borda para o estilo de linha unicode para um único ou
Duplo.

unicode_column_linestyle
Define o estilo de desenho da coluna para o estilo de linha unicode para um único ou
Duplo.

unicode_header_linestyle
Define o estilo de desenho do cabeçalho para o estilo de linha unicode para um único ou
Duplo.

As ilustrações de como esses diferentes formatos se parecem podem ser vistas na seção EXEMPLOS.

Dica
Existem vários comandos de atalho para \pset. Ver \a, \C, \H, \t, \T e \x.

\q ou \sair
Sai do programa psql. Em um arquivo de script, apenas a execução desse script é encerrada.

\qecho texto [...]
Este comando é idêntico a \eco exceto que a saída será gravada na consulta
canal de saída, conforme definido por \o.

\r ou \redefinir
Redefine (limpa) o buffer de consulta.

\s[ nome do arquivo ]
Imprima o histórico da linha de comando do psql para nome do arquivo. Se nome do arquivo é omitido, o histórico é
escrito na saída padrão (usando o pager, se apropriado). Este comando não é
disponível se o psql foi construído sem suporte Readline.

\definir [ nome [ valor [...]]]
Define a variável psql nome para valor, ou se mais de um valor for dado, ao
concatenação de todos eles. Se apenas um argumento for fornecido, a variável será definida com
um valor vazio. Para desarmar uma variável, use o \desativar comando.

\definir sem nenhum argumento exibe os nomes e valores de todos os psql atualmente definidos
variáveis.

Os nomes de variáveis ​​válidos podem conter letras, dígitos e sublinhados. Veja a seção
Variáveis ​​abaixo para detalhes. Os nomes de variáveis ​​diferenciam maiúsculas de minúsculas.

Embora você seja bem-vindo para definir qualquer variável para o que quiser, o psql trata vários
variáveis ​​como especiais. Eles estão documentados na seção sobre variáveis.

Note
Este comando não está relacionado ao comando SQL SET(7).

\setenv nome [ valor ]
Define a variável de ambiente nome para valor, ou se o valor não é fornecido, desarma
a variável de ambiente. Exemplo:

testdb=> \setenv PAGER menos
testdb=> \setenv MENOS -imx4F

\sf[+] descrição da função
Este comando busca e mostra a definição da função nomeada, na forma de um
CRIAR OR SUBSTITUIR FUNÇÃO comando. A definição é impressa na consulta atual
canal de saída, conforme definido por \o.

A função de destino pode ser especificada apenas por nome ou por nome e argumentos, para
exemplo foo(inteiro, texto). Os tipos de argumento devem ser fornecidos se houver mais de um
função de mesmo nome.

Se + for anexado ao nome do comando, as linhas de saída serão numeradas, com o
primeira linha do corpo da função sendo a linha 1.

\t
Alterna a exibição de cabeçalhos de nome de coluna de saída e rodapé de contagem de linhas. Este comando
é equivalente a \pset tuples_only e é fornecido por conveniência.

\T opções_tabela
Especifica os atributos a serem colocados na tag de tabela no formato de saída HTML. Isto
comando é equivalente a \pset tableattr opções_tabela.

\tempo [ on | WOW! ]
Sem parâmetro, alterna a exibição de quanto tempo cada instrução SQL leva, em
milissegundos. Com parâmetro, define o mesmo.

\desativar nome
Desativa (exclui) a variável psql nome.

\w ou \escrever nome do arquivo
\w ou \escrever |comando
Gera o buffer de consulta atual para o arquivo nome do arquivo ou canaliza-o para o comando shell
comando.

\ver [ segundo ]
Execute repetidamente o buffer de consulta atual (como \g) até ser interrompido ou a consulta
falha. Aguarde o número especificado de segundos (padrão 2) entre as execuções.

\x[ on | WOW! | auto ]
Define ou alterna o modo de formatação da tabela expandida. Como tal, é equivalente a \pset
expandido.

\z[ de cinto de segurança ]
Lista tabelas, visualizações e sequências com seus privilégios de acesso associados. Se um
de cinto de segurança for especificado, apenas tabelas, visualizações e sequências cujos nomes correspondem ao padrão
estão listadas.

Este é um apelido para \dp (“privilégios de exibição”).

\! [ comando ]
Escapa para um shell separado ou executa o comando shell comando. Os argumentos são
não mais interpretado; o shell os verá como estão. Em particular, a variável
regras de substituição e escapes de barra invertida não se aplicam.

\? [ tópico ]
Mostra informações de ajuda. O opcional tópico parâmetro (padrão para comandos) seleciona
qual parte do psql é explicada: comandos descreve os comandos de barra invertida do psql; opções
descreve as opções de linha de comando que podem ser passadas ao psql; e variáveis ​​mostra
ajuda sobre as variáveis ​​de configuração do psql.

padrões
Os vários comandos \d aceitam um de cinto de segurança parâmetro para especificar o(s) nome(s) de objeto a serem
exibido. No caso mais simples, um padrão é apenas o nome exato do objeto. O
os caracteres dentro de um padrão são normalmente dobrados para letras minúsculas, assim como em nomes SQL;
por exemplo, \dt FOO exibirá a tabela chamada foo. Como nos nomes SQL, colocar double
aspas em torno de um padrão param de dobrar para minúsculas. Se você precisar incluir um
caractere real de aspas duplas em um padrão, escreva-o como um par de aspas duplas dentro
uma sequência de aspas duplas; novamente isso está de acordo com as regras para SQL citadas
identificadores. Por exemplo, \dt "FOO""BAR" exibirá a tabela chamada FOO"BAR (não
foo"bar). Ao contrário das regras normais para nomes SQL, você pode colocar aspas duplas apenas
parte de um padrão, por exemplo \dt FOO"FOO"BAR irá mostrar a tabela chamada
fooFOObar.

Sempre que de cinto de segurança parâmetro é omitido completamente, os comandos \d exibem todos
objetos que são visíveis no caminho de pesquisa do esquema atual — isso é equivalente a
usando * como padrão. (Diz-se que um objeto é visível se o esquema que o contém é
no caminho de pesquisa e nenhum objeto do mesmo tipo e nome aparece anteriormente no
caminho de pesquisa. Isso é equivalente à declaração de que o objeto pode ser referenciado por
nome sem qualificação de esquema explícita.) Para ver todos os objetos no banco de dados
independentemente da visibilidade, use *.* como padrão.

Dentro de um padrão, * corresponde a qualquer sequência de caracteres (incluindo nenhum caractere) e ?
corresponde a qualquer caractere único. (Esta notação é comparável ao nome do arquivo shell do Unix
Por exemplo, \dt int* exibe tabelas cujos nomes começam com int. Mas
entre aspas duplas, * e ? perdem esses significados especiais e são apenas combinados
literalmente.

Um padrão que contém um ponto (.) é interpretado como um padrão de nome de esquema seguido por
um padrão de nome de objeto. Por exemplo, \dt foo*.*bar* exibe todas as tabelas cuja tabela
name inclui a barra que está em esquemas cujo nome do esquema começa com foo. Quando nenhum ponto
aparece, o padrão corresponde apenas a objetos visíveis no esquema atual
caminho de pesquisa. Novamente, um ponto entre aspas duplas perde seu significado especial e é
correspondia literalmente.

Usuários avançados podem usar notações de expressão regular, como classes de caracteres, para
exemplo [0-9] para corresponder a qualquer dígito. Todos os caracteres especiais de expressão regular funcionam como
especificado na Seção 9.7.3, “Expressões Regulares POSIX”, na documentação, exceto
por . que é considerado um separador conforme mencionado acima, * que é traduzido para o
notação de expressão regular .*, ? que é traduzido para ., e $ que é correspondido
literalmente. Você pode emular esses caracteres padrão quando precisar escrevendo ? por ., (R+|)
for R*, ou (R|) para R?. $ não é necessário como um caractere de expressão regular, pois o
padrão deve corresponder ao nome inteiro, ao contrário da interpretação usual de regular
expressões (em outras palavras, $ é automaticamente anexado ao seu padrão). Escreva * em
o início e/ou fim se você não deseja que o padrão seja ancorado. Observe que
entre aspas duplas, todos os caracteres especiais de expressão regular perdem sua
significados e são correspondidos literalmente. Além disso, os caracteres especiais de expressão regular
são correspondidos literalmente em padrões de nomes de operadores (ou seja, o argumento de \do).

Avançado Recursos
Variáveis
O psql fornece recursos de substituição de variáveis ​​semelhantes aos shells de comando comuns do Unix.
Variáveis ​​são simplesmente pares nome/valor, onde o valor pode ser qualquer string de qualquer
comprimento. O nome deve consistir em letras (incluindo letras não latinas), dígitos e
sublinhados.

Para definir uma variável, use o meta-comando psql \definir. Por exemplo, a

testdb=> \definir Foo Barra

define a variável foo para a barra de valor. Para recuperar o conteúdo da variável,
preceder o nome com dois pontos, por exemplo:

testdb=> \eco :foo
Barra

Isso funciona em comandos SQL regulares e metacomandos; há mais detalhes no SQL
Interpolação, abaixo.

Se você ligar \definir sem um segundo argumento, a variável é definida, com uma string vazia
como valor. Para desarmar (ou seja, excluir) uma variável, use o comando \desativar. Para mostrar o
valores de todas as variáveis, chame \definir sem qualquer argumento.

Note
Os argumentos de \definir estão sujeitos às mesmas regras de substituição que com outros
comandos. Assim você pode construir referências interessantes como \set :foo
'algo' e obter "soft links" ou "variáveis ​​variáveis" de fama Perl ou PHP,
respectivamente. Infelizmente (ou felizmente?), não há como fazer nada
útil com essas construções. Por outro lado, \set bar :foo é perfeitamente
maneira válida de copiar uma variável.

Várias dessas variáveis ​​são tratadas especialmente pelo psql. Eles representam certos
configurações de opções que podem ser alteradas em tempo de execução alterando o valor da variável,
ou em alguns casos representam o estado mutável do psql. Embora você possa usar esses
variáveis ​​para outros fins, isso não é recomendado, pois o comportamento do programa pode
crescer muito estranho muito rapidamente. Por convenção, todas as variáveis ​​especialmente tratadas
nomes consistem em todas as letras maiúsculas ASCII (e possivelmente dígitos e sublinhados).
Para garantir a máxima compatibilidade no futuro, evite usar esses nomes de variáveis ​​para
seus próprios propósitos. Segue uma lista de todas as variáveis ​​especialmente tratadas.

COMPROMISSO AUTOMÁTICO
Quando ativado (o padrão), cada comando SQL é confirmado automaticamente após o sucesso
conclusão. Para adiar o commit neste modo, você deve inserir um INÍCIO or Abra
TRANSAÇÃO Comando SQL. Quando desativado ou não definido, os comandos SQL não são confirmados até
você explicitamente emite COMPRAR or END. O modo autocommit-off funciona emitindo um
implicitamente INÍCIO para você, logo antes de qualquer comando que ainda não esteja em um
bloco de transação e não é em si um INÍCIO ou outro comando de controle de transação,
nem um comando que não pode ser executado dentro de um bloco de transação (como VÁCUO).

Note
No modo de confirmação automática, você deve abandonar explicitamente qualquer transação com falha
entrar ABORTAR or RECUPERAR. Lembre-se também de que, se você sair da sessão
sem se comprometer, seu trabalho será perdido.

Note
O modo autocommit-on é o comportamento tradicional do PostgreSQL, mas
autocommit-off está mais próximo da especificação SQL. Se você preferir o autocommit-off, você
pode querer configurá-lo no arquivo psqlrc de todo o sistema ou no seu ~/.psqlrc arquivo.

COMP_KEYWORD_CASE
Determina qual maiúsculas e minúsculas usar ao preencher uma palavra-chave SQL. Se definido como
inferior ou superior, a palavra completa estará em caixa baixa ou maiúscula, respectivamente.
Se configurado para preservar-inferior ou preservar-superior (o padrão), a palavra completa será
ser no caso da palavra já digitada, mas palavras sendo completadas sem
qualquer coisa inserida estará em letras minúsculas ou maiúsculas, respectivamente.

DBNAME
O nome do banco de dados ao qual você está conectado no momento. Isso é definido toda vez
você se conecta a um banco de dados (incluindo a inicialização do programa), mas pode ser desativada.

ECHO
Se definido como tudo, todas as linhas de entrada não vazias são impressas na saída padrão à medida que são
ler. (Isso não se aplica a linhas lidas interativamente.) Para selecionar este comportamento
na inicialização do programa, use o interruptor -a. Se definido para consultas, o psql imprime cada consulta
à saída padrão à medida que é enviada ao servidor. A chave para isso é -e. Se definido
a erros, somente as consultas com falha serão exibidas na saída de erro padrão. O
mudar para isso é -b. Se não definido, ou se definido como nenhum (ou qualquer outro valor além daqueles
acima), nenhuma consulta será exibida.

ECHO_HIDDEN
Quando esta variável é definida como on e um comando de barra invertida consulta o banco de dados, o
consulta é mostrada primeiro. Esse recurso ajuda você a estudar os componentes internos do PostgreSQL e
fornecer funcionalidade semelhante em seus próprios programas. (Para selecionar este comportamento em
inicialização do programa, use o interruptor -E.) Se você definir a variável para o valor noexec,
as consultas são apenas mostradas, mas não são realmente enviadas ao servidor e executadas.

CODIFICAÇÃO
A codificação do conjunto de caracteres do cliente atual.

FETCH_COUNT
Se esta variável for definida para um valor inteiro > 0, os resultados de SELECIONE as consultas são
buscado e exibido em grupos de tantas linhas, em vez do padrão
comportamento de coletar todo o conjunto de resultados antes da exibição. Portanto, apenas um
quantidade limitada de memória é usada, independentemente do tamanho do conjunto de resultados.
As configurações de 100 a 1000 são comumente usadas ao ativar esse recurso. Tenha em mente
que ao usar esse recurso, uma consulta pode falhar depois de já ter exibido
algumas fileiras.

Dica
Embora você possa usar qualquer formato de saída com esse recurso, o padrão alinhado
formato tende a ficar ruim porque cada grupo de FETCH_COUNT as linhas serão
formatados separadamente, levando a larguras de coluna variadas nos grupos de linhas.
Os outros formatos de saída funcionam melhor.

HISTCONTROL
Se esta variável estiver configurada para ignorespace, as linhas que começam com um espaço não são
inserido na lista de histórico. Se definido como um valor de ignoreups, as linhas correspondentes ao
linha do histórico anterior não são inseridas. Um valor de ignoreboth combina os dois
opções. Se não definido, ou se definido como nenhum (ou qualquer outro valor que não os acima), todos
as linhas lidas no modo interativo são salvas na lista de histórico.

Note
Esse recurso foi plagiado descaradamente do Bash.

ARQUIVO HISTÓRICO
O nome do arquivo que será usado para armazenar a lista de histórico. o valor padrão é
~/.psql_history. Por exemplo, colocando:

\set HISTFILE ~/.psql_history- :DBNAME

in ~/.psqlrc fará com que o psql mantenha um histórico separado para cada banco de dados.

Note
Esse recurso foi plagiado descaradamente do Bash.

HISTORIAR
O número de comandos a serem armazenados no histórico de comandos. O valor padrão é 500.

Note
Esse recurso foi plagiado descaradamente do Bash.

HOST
O host do servidor de banco de dados ao qual você está conectado no momento. Isso é definido toda vez
você se conecta a um banco de dados (incluindo a inicialização do programa), mas pode ser desativada.

IGNORAR DE
Se não definido, enviar um caractere EOF (geralmente Control+D) para uma sessão interativa
do psql encerrará o aplicativo. Se definido para um valor numérico, esse número de EOF
caracteres são ignorados antes que o aplicativo seja encerrado. Se a variável estiver definida
mas não tem valor numérico, o padrão é 10.

Note
Esse recurso foi plagiado descaradamente do Bash.

LASTÓIDE
O valor do último OID afetado, conforme retornado de um INSIRA or \lo_importar
comando. Esta variável só tem garantia de validade até depois do resultado de
o próximo comando SQL foi exibido.

ON_ERROR_ROLLBACK
Quando ativado, se uma instrução em um bloco de transação gerar um erro, o
erro é ignorado e a transação continua. Quando definido como interativo, tal
erros são ignorados apenas em sessões interativas, e não ao ler o script
arquivos. Quando desabilitado ou desabilitado, uma instrução em um bloco de transação que gera
um erro aborta toda a transação. O modo de reversão de erro funciona emitindo
um implícito SALVAR PONTO para você, logo antes de cada comando que está em uma transação
block e, em seguida, reverter para o ponto de salvamento se o comando falhar.

ON_ERROR_STOP
Por padrão, o processamento do comando continua após um erro. Quando esta variável é definida
ativado, o processamento será interrompido imediatamente. No modo interativo, o psql irá
retorne ao prompt de comando; caso contrário, o psql sairá, retornando o código de erro 3 para
distinguir este caso das condições de erro fatal, que são relatadas usando erros
código 1. Em ambos os casos, quaisquer scripts atualmente em execução (o script de nível superior, se
any, e quaisquer outros scripts que possam ser invocados) serão encerrados
imediatamente. Se a string de comando de nível superior contiver vários comandos SQL,
o processamento irá parar com o comando atual.

PORT
A porta do servidor de banco de dados à qual você está conectado no momento. Isso é definido a cada
vez que você se conecta a um banco de dados (incluindo a inicialização do programa), mas pode ser desativada.

PROMPT1
PROMPT2
PROMPT3
Eles especificam como devem ser os problemas dos prompts do psql. Consulte Solicitando abaixo.

QUIETO
Definir esta variável para on é equivalente à opção de linha de comando -q. É
provavelmente não é muito útil no modo interativo.

ÚNICA LINHA
Definir esta variável para on é equivalente à opção de linha de comando -S.

ÚNICO PASSO
Definir esta variável para on é equivalente à opção de linha de comando -s.

USUÁRIO
O usuário do banco de dados com o qual você está conectado no momento. Isso é definido toda vez que você
conectar a um banco de dados (incluindo a inicialização do programa), mas pode ser desativada.

VERBOSIDADE
Esta variável pode ser definida com os valores default, verbose ou conciso para controlar o
verbosidade dos relatórios de erros.

SQL Interpolação
Uma característica chave das variáveis ​​do psql é que você pode substituí-las (“interpolar”) em
instruções SQL regulares, bem como os argumentos de meta-comandos. Além disso, o psql
fornece recursos para garantir que os valores das variáveis ​​usados ​​como literais SQL e
identificadores estão devidamente citados. A sintaxe para interpolar um valor sem qualquer
a citação é preceder o nome da variável com dois pontos (:). Por exemplo,

testdb=> \definir Foo 'minha mesa'
testdb=> SELECIONE * A PARTIR DE :fo;

consultaria a tabela my_table. Observe que isso pode não ser seguro: o valor da
variável é copiada literalmente, então pode conter aspas não balanceadas ou até mesmo barra invertida
comandos. Você deve se certificar de que faz sentido onde você o coloca.

Quando um valor deve ser usado como um literal ou identificador SQL, é mais seguro organizar
para que seja citado. Para citar o valor de uma variável como um literal SQL, escreva dois pontos
seguido pelo nome da variável entre aspas simples. Para citar o valor como um SQL
identificador, escreva dois pontos seguido do nome da variável entre aspas duplas. Esses
construções lidam corretamente com aspas e outros caracteres especiais embutidos no
valor variável. O exemplo anterior seria escrito com mais segurança desta forma:

testdb=> \definir Foo 'minha mesa'
testdb=> SELECIONE * A PARTIR DE :"foi";

A interpolação de variável não será executada dentro de literais SQL citados e
identificadores. Portanto, uma construção como ':foo' não funciona para produzir uma citação
literal do valor de uma variável (e não seria seguro se funcionasse, já que
não lidaria corretamente com aspas incorporadas no valor).

Um exemplo de uso deste mecanismo é copiar o conteúdo de um arquivo em uma tabela
coluna. Primeiro carregue o arquivo em uma variável e depois interpole o valor da variável
como uma string entre aspas:

testdb=> \definir conteúdo `gato meu_arquivo.txt`
testdb=> INSIRA EM minha mesa VALORES (:'contente');

(Observe que isso ainda não funcionará se my_file.txt contiver bytes NUL. O psql não
suporta bytes NUL incorporados em valores de variáveis.)

Como os dois pontos podem aparecer legalmente em comandos SQL, uma aparente tentativa de interpolação
(ou seja, :name, :'name' ou :"name") não é substituído a menos que a variável nomeada seja
atualmente definido. De qualquer forma, você pode escapar de dois pontos com uma barra invertida para protegê-lo de
substituição.

A sintaxe de dois pontos para variáveis ​​é SQL padrão para linguagens de consulta incorporadas, como
ECPG. As sintaxes de dois pontos para fatias de array e casts de tipo são extensões do PostgreSQL,
que às vezes pode entrar em conflito com o uso padrão. A sintaxe de aspas com dois pontos para
escapar do valor de uma variável como um literal ou identificador SQL é uma extensão do psql.

Solicitando
Os prompts de problemas do psql podem ser personalizados de acordo com sua preferência. As três variáveis
PROMPT1, PROMPT2 e PROMPT3 contêm strings e sequências de escape especiais que
descrever a aparência do prompt. O prompt 1 é o prompt normal emitido
quando o psql solicita um novo comando. O prompt 2 é emitido quando mais entrada é esperada
durante a entrada do comando porque o comando não foi finalizado com um ponto e vírgula ou um
cotação não foi fechada. O prompt 3 é emitido quando você executa um SQL CÓPIA comando e você é
esperado para digitar os valores de linha no terminal.

O valor da variável de prompt selecionada é impresso literalmente, exceto onde uma porcentagem
sinal (%) é encontrado. Dependendo do próximo caractere, alguns outros textos são
substituído em seu lugar. As substituições definidas são:

%M
O nome completo do host (com nome de domínio) do servidor de banco de dados ou [local] se o
conexão é através de um soquete de domínio Unix, ou [local:/dir/nome], se o domínio Unix
socket não está compilado no local padrão.

%m
O nome do host do servidor de banco de dados, truncado no primeiro ponto, ou [local] se
a conexão é feita por um soquete de domínio Unix.

%>
O número da porta na qual o servidor de banco de dados está atendendo.

%n
O nome de usuário da sessão do banco de dados. (A expansão deste valor pode mudar durante um
sessão de banco de dados como resultado do comando SET SESSÃO AUTORIZAÇÃO.)

%/
O nome do banco de dados atual.

%~
Como %/, mas a saída é ~ (til) se o banco de dados for seu banco de dados padrão.

%#
Se o usuário da sessão for um superusuário do banco de dados, um #, caso contrário, um >. (O
expansão deste valor pode mudar durante uma sessão de banco de dados como resultado de
o comando SET SESSÃO AUTORIZAÇÃO.)

%R
No prompt 1 normalmente =, mas ^ se estiver no modo de linha única e ! se a sessão for
desconectado do banco de dados (o que pode acontecer se \conectar falha). No prompt 2
a sequência é substituída por -, *, aspas simples, aspas duplas ou um dólar
sinal, dependendo se o psql espera mais entrada porque o comando não foi
terminado ainda, porque você está dentro de um comentário /* ... */, ou porque você está
dentro de uma string cotada ou com escape de dólar. No prompt 3 a sequência não produz
qualquer coisa.

%x
Status da transação: uma string vazia quando não estiver em um bloco de transação ou * quando estiver
um bloco de transação ou ! quando em um bloco de transação com falha, ou ? quando o
estado da transação é indeterminado (por exemplo, porque não há conexão).

%l
O número da linha dentro da instrução atual, começando em 1.

%dígitos
O caractere com o código octal indicado é substituído.

%:nome:
O valor da variável psql nome. Consulte a seção Variáveis ​​para obter detalhes.

%`comando`
A saída de comando, semelhante à substituição “back-tick” comum.

%[...%]
Os prompts podem conter caracteres de controle de terminal que, por exemplo, alteram o
cor, plano de fundo ou estilo do texto do prompt ou altere o título do
janela do terminal. Para que os recursos de edição de linha do Readline funcionem
corretamente, esses caracteres de controle não imprimíveis devem ser designados como invisíveis por
cercando-os com %[ e %]. Vários pares destes podem ocorrer dentro do
pronto. Por exemplo:

testdb=> \set PROMPT1 '%[%033[1;33;40m%]%n@%/%R%[%033[0m%]%# '

resulta em um prompt em negrito (1;) amarelo sobre preto (33;40) no compatível com VT100,
terminais com capacidade de cor.
Para inserir um sinal de porcentagem em seu prompt, escreva %%. Os prompts padrão são '%/%R%# '
para os prompts 1 e 2 e '>> ' para o prompt 3.

Note
Esse recurso foi plagiado descaradamente do tcsh.

Linha de comando Edição
O psql suporta a biblioteca Readline para edição e recuperação de linha convenientes. O
o histórico de comandos é salvo automaticamente quando o psql sai e é recarregado quando o psql
começa. O preenchimento de tabulação também é suportado, embora a lógica de preenchimento não faça
afirmam ser um analisador SQL. As consultas geradas pelo preenchimento de tabulação também podem interferir
com outros comandos SQL, por exemplo, SET TRANSACTION ISOLATION LEVEL. Se por algum motivo você
não gostar do preenchimento de tabulação, você pode desativá-lo colocando isso em um arquivo chamado
.inputrc em seu diretório inicial:

$se psql
defina a conclusão da desativação em
$ endif

(Este não é um psql, mas um recurso Readline. Leia sua documentação para mais informações
detalhes.)

MEIO AMBIENTE


COLUNAS
Se \pset columns for zero, controla a largura para o formato encapsulado e a largura para
determinar se a saída ampla requer o pager ou deve ser alternada para a vertical
formato no modo automático expandido.

PAGER
Se os resultados da consulta não couberem na tela, eles serão encaminhados por meio desse comando.
Os valores típicos são mais ou menos. O padrão é dependente da plataforma. O uso do
pager pode ser desabilitado usando o \pset comando.

PGDATABASE
PHOST
PGPORT
PGUSER
Parâmetros de conexão padrão (consulte a Seção 31.14, “Variáveis ​​de ambiente”, no
documentação).

PSQL_EDITOR
EDITOR
VISUAL
Editor utilizado pelo \e e \ef comandos. As variáveis ​​são examinadas na ordem
listados; o primeiro que é definido é usado.

Os editores padrão integrados são vi em sistemas Unix e notepad.exe no Windows
sistemas.

PSQL_EDITOR_LINENUMBER_ARG
Quando \e or \ef é usado com um argumento de número de linha, esta variável especifica o
argumento de linha de comando usado para passar o número da linha inicial para o editor do usuário. Para
editores como Emacs ou vi, este é um sinal de mais. Inclua um espaço à direita no
valor da variável se precisar haver espaço entre o nome da opção e a linha
número. Exemplos:

PSQL_EDITOR_LINENUMBER_ARG='+'
PSQL_EDITOR_LINENUMBER_ARG='--line '

O padrão é + em sistemas Unix (correspondente ao editor padrão vi, e útil
para muitos outros editores comuns); mas não há padrão em sistemas Windows.

PSQL_HISTORY
Local alternativo para o arquivo de histórico de comandos. A expansão do til (~) é executada.

SQLRC
Local alternativo do arquivo .psqlrc do usuário. A expansão do til (~) é executada.

SHELL
Comando executado pelo \! comando.

TMPDIR
Diretório para armazenar arquivos temporários. O padrão é /tmp.

Este utilitário, como a maioria dos outros utilitários PostgreSQL, também usa as variáveis ​​de ambiente
suportado pela libpq (consulte a Seção 31.14, “Variáveis ​​de ambiente”, na documentação).

Use o psql online usando os serviços onworks.net


Servidores e estações de trabalho gratuitos

Baixar aplicativos Windows e Linux

Comandos Linux

  • 1
    4g8
    4g8
    4g8 - Captura e Interceptação de Pacotes
    para redes comutadas...
    Executar 4g8
  • 2
    4s-adminJ
    4s-adminJ
    Gerenciamento de cluster 4s-admin � 4store
    ferramenta ...
    Execute 4s-adminJ
  • 3
    creditar
    creditar
    creduce - redutor de programa C e C ++
    DESCRIÇÃO: creduce 2.5.0 (desconhecido) --
    um redutor de programa C e C++ C-Reduce
    requer um "teste de interesse" e
    um ou ...
    Executar creduce
  • 4
    arrepiante
    arrepiante
    CREEPY - Uma informação de geolocalização
    agregador DESCRIÇÃO: creepy é um
    aplicativo que permite reunir
    informações relacionadas à geolocalização sobre
    usuários de...
    Corra assustador
  • 5
    g.gisenvgrass
    g.gisenvgrass
    g.gisenv - Gera e modifica o
    configurações atuais da variável GRASS do usuário.
    Imprime todas as variáveis ​​GRASS definidas se não
    opção é dada. PALAVRAS-CHAVE: geral,
    estabelecendo ...
    Execute g.gisenvgrass
  • 6
    g.guigrass
    g.guigrass
    g.gui - Lança um usuário gráfico GRASS
    sessão de interface (GUI). Opcionalmente
    atualiza as configurações padrão da interface do usuário.
    PALAVRAS-CHAVE: geral, GUI, interface de usuário...
    Execute g.guigrass
  • Mais "

Ad