Mysql Foreign-Keys anzeigen

Danielku15

Erfahrenes Mitglied
Hallo Leute.
Ich möchte aus einer MySql Tabelle die Foreignkeys auslesen um die Referenzierten Tabellen zu ermitteln. Jedoch liefert der SHOW INDEX keine Spalte mit der Referenzierten Tabelle. Also wenn ich CoAdresse und CoLand habe (CoAdresse hat ein FK aus CoLand: NLandID) dann möchte ich mittels SHOW INDEX FROM CoAdresse auch beim Key CoLand_F1 die CoLand mit NLandID lesen können. GIbts da ne Möglichkeit die Zieltabelle mittels Sql zu lesen?

Gruß Daniel
 
Hallo,

der bzw. die Indizes haben nur bedingt mit den Foreign-Key-Definitionen zu tun.
Was du wissen möchtest, sind die Details zu dem Constraint, der durch die Datenbank sichergestellt wird.

Diese Informationen findest du im INFORMATION_SCHEMA.

Folgendes SQL könntest du dafür benutzen:

SQL:
select c.referenced_table_name,
       c.referenced_column_name 
  from information_schema.key_column_usage c 
 where c.table_schema   = '<dein_datenbankschema>' 
   and c.table_name     = 'co_adresse';

Markus
 
Wunderbar. Genau das hab ich gesucht. Scheint wohl besser zu sein wenn ich nur mit dem INFORMATION_SCHEMA arbeite.

Danke.
 

Neue Beiträge

Zurück