Comment déterminer toutes les contraintes de clé étrangère liées à une table ou une colonne dans MySQL ?
Cette question a été soulevée précédemment pour Oracle, et voici la solution pour MySQL :
Pour lister les contraintes de clé étrangère pointant vers une table spécifique, utilisez le requête suivante :
SELECT TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE REFERENCED_TABLE_SCHEMA = (SELECT DATABASE()) AND REFERENCED_TABLE_NAME = '<table_name>' \G
Pour répertorier les contraintes de clé étrangère pointant vers une colonne spécifique, modifiez la requête comme ceci :
SELECT TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE REFERENCED_TABLE_SCHEMA = (SELECT DATABASE()) AND REFERENCED_TABLE_NAME = '<table_name>' AND REFERENCED_COLUMN_NAME = '<column_name>' \G
Remplacez simplement '
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!