Listar todas as foreign keys de uma tabela com MySQL

Neste artigo você vai aprender a como listar todas as foreign keys de uma tabela com MySQL, de uma forma simples e rápida

Listar todas as foreign keys de uma tabela capa

Fala programador(a), beleza? Bora aprender mais sobre FOREIGN KEYS e também sobre SQL!

Para listas todas as chaves estrangeiras, ou seja, foreign keys que estão relacionadas a uma tabela precisamos criar uma query que aparenta ser complexa

Formação Claude Code
Formação Recomendada

Formação Claude Code

Domine Claude Code do absoluto zero até o avançado

  • 114 aulas
  • 4 projetos
  • 9h 18min

Mas ela pode ser reproduzida facilmente para outras tabelas, apenas precisamos determinar o nome do banco e a tabela alvo

Veja a query necessária:

SELECT 
  TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME
FROM
  INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE
  REFERENCED_TABLE_SCHEMA = "seu_banco" AND
  REFERENCED_TABLE_NAME = "sua_tabela";

Esta query vai gerar um retorno que é exatamente o que precisamos, quais tabelas e suas colunas que fazem relação com a tabela alvo e em todas as colunas

Se precisarmos de mais especifidade, por exemplo: detalhar os dados apenas de uma coluna, podemos fazer assim:

SELECT 
  TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME
FROM
  INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE
  REFERENCED_TABLE_SCHEMA = "seu_banco" AND
  REFERENCED_TABLE_NAME = "sua_tabela" AND
  REFERENCED_COLUMN_NAME = "sua_coluna";

Agora temos as FOREIGN KEYs apenas de uma única coluna por vez

Conclusão

Neste artigo você aprendeu a listar todas as foreign keys de uma tabela em MySQL

Esta solução pode ser facilmente replicada em outros bancos relacionais também, basta realizar as adaptações necessárias para a sintaxe

Confira nossos cursos gratuitos no Youtube, com vídeos todos os dias!

Se inscreva e ative o sininho para receber as notificações e aprender mais ainda sobre desenvolvimento web!

Veja também nosso catálogo de cursos na Udemy, todos com exercícios e projetos práticos, nas mais diversas tecnologias

O link acima contém um cupom de desconto para os cursos!

Escrito por | Matheus Battisti

Matheus Battisti
Fundador da Hora de Codar

Programador apaixonado pelo mundo das tecnologias, sempre buscando em aprender e se aprofundar em linguagens, frameworks e o que mais for necessário para executar um bom trabalho. Agora tem uma nova missão que é de passar seu conhecimento adiante para formar novos programadores e especializar mais os que já são.

Subscribe
Notify of
guest

1 Comentário
Oldest
Newest Most Voted
SANDRO JOSE NEUHAUS

Show de bola essa dica, ajudou muito para resolver um problema onde outro Dev renomeou uma tabela num processo de importação e todas as tabelas relacionadas tiveram suas chaves estrangeiras alteradas também. O que resultou em violações de chave é claro… Parabéns pelo seu trabalho.

Formações

Formação Vibe Coding

Formação Vibe Coding

Do Prompt ao Produto: Crie Software Real com IA

  • 474 aulas
  • 20 projetos
  • 39h 27min

Blog | Mais populares