ホームページ >データベース >mysql チュートリアル >MySQL で特定のテーブルと列を参照する外部キーを持つテーブルを検索するにはどうすればよいですか?

MySQL で特定のテーブルと列を参照する外部キーを持つテーブルを検索するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-17 15:56:15658ブラウズ

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

特定のテーブルと列を参照する外部キーを持つテーブルの識別

どのテーブルが特定のテーブルと列を外部キーとして参照しているかを判断するには、これらのテーブルのどれに外部キーに実際のデータが含まれているかを調べるには、次の MySQL クエリを実行できます。採用:

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

このクエリは、データベース内の外部キー関係に関するメタデータを含む information_schema.KEY_COLUMN_USAGE テーブルから情報を取得します。 REFERENCED_TABLE_NAME と REFERENCED_COLUMN_NAME でフィルタリングすることにより、クエリは、指定されたテーブルと列を指す外部キーを持つテーブルを識別します。

結果をさらに絞り込み、外部キーに実際の値を持つテーブルのみがリストされるようにするには、次のようにします。クエリを次のように変更します:

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

この変更には、TABLE_SCHEMA の追加のフィルターが含まれます。これにより、クエリを実行する特定のデータベースを指定できます。

以上がMySQL で特定のテーブルと列を参照する外部キーを持つテーブルを検索するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。