Maison >base de données >tutoriel mysql >Comment puis-je trouver des tables avec des clés étrangères faisant référence à une table et une colonne spécifiques dans MySQL ?

Comment puis-je trouver des tables avec des clés étrangères faisant référence à une table et une colonne spécifiques dans MySQL ?

DDD
DDDoriginal
2024-12-17 15:56:15653parcourir

How Can I Find Tables with Foreign Keys Referencing a Specific Table and Column in MySQL?

Identification des tables avec des clés étrangères faisant référence à une table et une colonne spécifiques

Pour déterminer quelles tables font référence à une table et une colonne particulières en tant que clés étrangères, et laquelle de ces tables contient des données réelles dans ces clés étrangères, la requête MySQL suivante peut être utilisée :

SELECT *
FROM information_schema.KEY_COLUMN_USAGE
WHERE REFERENCED_TABLE_NAME = 'X'
  AND REFERENCED_COLUMN_NAME = 'X_id';

Cette requête récupère les informations du Table information_schema.KEY_COLUMN_USAGE, qui contient des métadonnées sur les relations de clés étrangères dans la base de données. En filtrant sur REFERENCED_TABLE_NAME et REFERENCED_COLUMN_NAME, la requête identifie les tables avec des clés étrangères pointant vers la table et la colonne spécifiées.

Pour affiner davantage les résultats et garantir que seules les tables avec des valeurs réelles dans les clés étrangères sont répertoriées, vous pouvez modifier la requête comme suit :

SELECT *
FROM information_schema.KEY_COLUMN_USAGE
WHERE REFERENCED_TABLE_NAME = 'X'
  AND REFERENCED_COLUMN_NAME = 'X_id'
  AND TABLE_SCHEMA = 'your_database_name';

Cette modification inclut un filtre supplémentaire sur TABLE_SCHEMA, qui permet de spécifier le spécifique base de données que vous souhaitez interroger.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn