Neste artigo você vai aprender a como listar todas as foreign keys de uma tabela com MySQL, de uma forma simples e rápida
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
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!