Eu tenho um banco de dados postgres com vários esquemas. Quando eu me conecto ao banco de dados a partir de um shell psql
e o executo, \dt
ele usa o esquema de conexão padrão que é público . Existe um sinalizador que eu possa especificar ou como posso alterar o esquema?
postgresql
psql
mehany
fonte
fonte
Respostas:
No PostgreSQL, o sistema determina em qual tabela se deve seguir um caminho de pesquisa, que é uma lista de esquemas para procurar.
A primeira tabela correspondente no caminho de pesquisa é considerada a desejada, caso contrário, se não houver correspondência, um erro será gerado, mesmo que existam nomes de tabelas correspondentes em outros esquemas no banco de dados.
Para mostrar o caminho de pesquisa atual, você pode usar o seguinte comando:
E para colocar o novo esquema no caminho, você pode usar:
Ou se você quiser vários esquemas:
Referência: https://www.postgresql.org/docs/current/static/ddl-schemas.html
fonte
Deseja alterar o banco de dados?
Atualizar.
Eu li novamente sua pergunta. Para exibir esquemas
Para alterar o esquema, você pode tentar
fonte
fonte
Use o nome do esquema com ponto no comando psql para obter informações sobre esse esquema.
Configuração:
Mostrar lista de relações em
test_schema
:Mostrar
test_schema.test_table
definição:Mostrar todas as tabelas em
test_schema
:etc ...
fonte
Isso é antigo, mas eu coloquei exportações no meu alias para conectar ao db:
E para outro esquema:
fonte
export
e o ponto e vírgula em seus pseudônimos. Dessa formaPGOPTIONS
, não fica por aí depois que você sai do psql.SET search_path
a cada consulta. obrigado!palavra chave:
exemplo:
fonte
solução rápida pode ser:
fonte
se estiver jogando com o psql dentro do docker exec, faça o seguinte:
fonte