🧚 Escute! O Beekeeper Studio é uma GUI de banco de dados rápida, moderna e open source Baixar
8 de abril de 2024 Por Matthew Rathbone

Neste artigo, vamos explorar um dos sistemas embutidos do PostgreSQL conhecido como information_schema.

O que é o Information_Schema?

O information_schema é um catálogo do sistema que forma um conjunto padrão de views com informações sobre os objetos do banco de dados PostgreSQL. Basicamente, é um metabanco de dados que guarda informações sobre o seu banco de dados atual. Ele está presente em todos os mecanismos de banco de dados SQL compatíveis com o padrão, o que o torna bastante útil em migrações.

Vale observar que o information_schema é somente leitura e não permite inserir novas informações nem alterar dados existentes. Vamos começar a explorar as diferentes views do information_schema que podem ser úteis para diversas tarefas.

SELECT table_name 
FROM information_schema.tables 
WHERE table_schema = 'information_schema';

O código é compatível com todas as versões do PostgreSQL.
Ao ser executado, este código retorna uma lista de todas as views disponíveis para os usuários no information_schema.

Por que usar o Information_Schema?

O information_schema é fundamental quando você quer trabalhar de forma mais eficiente com as estruturas do banco de dados, principalmente em relação a:

  • Tabelas
  • Colunas
  • Índices
  • Triggers
  • Constraints
  • Schemas

Information_Schema.Tables

A view information_schema.tables contém detalhes sobre todas as tabelas do banco de dados conectado.

SELECT table_name 
FROM information_schema.tables 
WHERE table_type = 'BASE TABLE' 
AND table_schema NOT IN ('pg_catalog', 'information_schema');

O código é compatível com todas as versões do PostgreSQL. O resultado será uma lista de todas as tabelas base do seu banco de dados.

Information_Schema.Columns

A view information_schema.columns é onde você obtém detalhes específicos sobre as colunas do seu banco de dados.

SELECT table_name, column_name, data_type 
FROM information_schema.columns 
WHERE table_schema NOT IN ('pg_catalog', 'information_schema')
AND table_name   = 'your_table';

O código é compatível com qualquer versão do PostgreSQL. Substitua ‘your_table’ pelo nome da sua tabela para obter uma lista de todas as colunas e seus tipos de dados na tabela especificada.

Information_Schema.Triggers

Informações sobre triggers podem ajudar na depuração ou no entendimento de dependências. A view information_schema.triggers é usada para obter detalhes sobre os triggers associados ao banco de dados.

SELECT event_object_table, trigger_name, action_statement, action_timing 
FROM information_schema.triggers;

Este código, compatível com todas as versões do PostgreSQL, retorna o nome da tabela, o nome do trigger, a ação do trigger e o momento em que ele é disparado.

Information_Schema.Key_Column_Usage

A view information_schema.key_column_usage fornece informações que facilitam o entendimento dos relacionamentos de chave estrangeira no seu banco de dados.

SELECT constraint_name, table_name, column_name, ordinal_position
FROM information_schema.key_column_usage
WHERE table_name = 'your_table';

Substitua ‘your_table’ pelo nome da sua tabela e execute o código, compatível com todas as versões do PostgreSQL, para obter constraint_name, table_name, column_name e ordinal_position de cada chave na tabela especificada.

Conclusão

Neste tutorial, desvendamos os detalhes do information_schema do PostgreSQL. Aproveitando as views do information_schema, você ganha mais controle e obtém insights mais precisos sobre a estrutura e os elementos do seu banco de dados. Se você está migrando para o PostgreSQL a partir de outro banco de dados SQL, as views do information_schema serão especialmente úteis, já que fazem parte do padrão SQL.

Sua jornada com o PostgreSQL não termina aqui. Fique de olho nos próximos guias, que vão explorar mais a fundo o vasto universo do PostgreSQL, com tópicos mais avançados, dicas e truques.

Beekeeper Studio é um cliente de banco de dados gratuito e open source

A melhor ferramenta de consultas e edição de SQL que já usei. Tem tudo o que preciso para gerenciar meu banco de dados. - ⭐⭐⭐⭐⭐ Mit

O Beekeeper Studio é rápido, intuitivo e fácil de usar. Ele suporta vários bancos de dados e funciona muito bem no Windows, Mac e Linux.

A versão do Beekeeper para Linux tem 100% dos recursos, sem atalhos e sem concessões.

O que os usuários dizem sobre o Beekeeper Studio

★★★★★
"O Beekeeper Studio substituiu completamente meu antigo fluxo de trabalho com SQL. É rápido, intuitivo e torna o trabalho com banco de dados agradável de novo."
— Alex K., desenvolvedor de banco de dados
★★★★★
"Já testei muitas GUIs de banco de dados, mas o Beekeeper encontra o equilíbrio perfeito entre recursos e simplicidade. Simplesmente funciona."
— Sarah M., engenheira full stack

Pronto para melhorar seu fluxo de trabalho com SQL?

download Baixar grátis