Heim >Datenbank >MySQL-Tutorial >Wie kann ich Tabellen mit Fremdschlüsseln finden, die auf eine bestimmte Tabelle und Spalte in MySQL verweisen?

Wie kann ich Tabellen mit Fremdschlüsseln finden, die auf eine bestimmte Tabelle und Spalte in MySQL verweisen?

DDD
DDDOriginal
2024-12-17 15:56:15656Durchsuche

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

Identifizieren von Tabellen mit Fremdschlüsseln, die auf eine bestimmte Tabelle und Spalte verweisen

Um zu bestimmen, welche Tabellen auf eine bestimmte Tabelle und Spalte als Fremdschlüssel verweisen, und Welche dieser Tabellen tatsächliche Daten in diesen Fremdschlüsseln enthält, kann die folgende MySQL-Abfrage verwendet werden:

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

Diese Abfrage ruft Informationen aus dem ab information_schema.KEY_COLUMN_USAGE-Tabelle, die Metadaten zu Fremdschlüsselbeziehungen in der Datenbank enthält. Durch Filtern nach REFERENCED_TABLE_NAME und REFERENCED_COLUMN_NAME identifiziert die Abfrage Tabellen mit Fremdschlüsseln, die auf die angegebene Tabelle und Spalte verweisen.

Sie können die Ergebnisse weiter eingrenzen und sicherstellen, dass nur Tabellen mit tatsächlichen Werten in den Fremdschlüsseln aufgelistet werden Ändern Sie die Abfrage wie folgt:

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

Diese Änderung enthält einen zusätzlichen Filter für TABLE_SCHEMA, mit dem Sie angeben können die spezifische Datenbank, die Sie abfragen möchten.

Das obige ist der detaillierte Inhalt vonWie kann ich Tabellen mit Fremdschlüsseln finden, die auf eine bestimmte Tabelle und Spalte in MySQL verweisen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn