PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : MySQL: Fremdschlüssel via information_schema auslesen


mf_2
2013-07-01, 18:31:57
Hallo zusammen,

ich habe zwei Fremdschlüssel auf einer InnoDB-Tabelle angelegt und möchte diese nun programmatisch abfragen. Dazu habe ich die Tabellen der information_schema-Datenbank angesehen, dort aber nichts entsprechendes gefunden.
Laut der Doku von MySQL sollten die da aber drinstehen. Muss ich noch irgendeine Operation durchführen dass das geht?

Viele Grüße
mf_2

Disconnected
2013-07-01, 21:33:45
information_schema enthält meines Wissens nach nur die Zugriffsberechtigungen. Alle wesentlichen Informationen liegen hingegen in der mysql-Datenbank.

mf_2
2013-07-01, 22:22:12
So wie ich das sehe ist das gerade anders herum. Ich habe gerade in die mysql-Datenbank reingesehen. Da steht nichts zu Fremdschlüsseln. In der information_schema-Datenbank steht aber prinzipiell immer ganz viel zu den einzelnen DB-Elementen (Spalten, Tabellen usw.), nur über die Fremdschlüssel finde ich da nichts.

Gast
2013-07-02, 07:30:29
einfach mal google nutzen: http://stackoverflow.com/questions/201621/how-do-i-see-all-foreign-keys-to-a-table-or-column

mf_2
2013-07-02, 11:12:04
Genau den Link hatte ich auch schon angeklickt, wie gesagt ich hatte schon die ganze information_schema-Datenbank auf den Kopf gestellt.

Nun habe ich aber den Fehler gefunden, ich muss vorher auf den zu nutzenden Spalten noch einen Index definieren, sonst kann da nur eine Relation, aber kein Foreign Key angelegt werden. Deswegen tauchten die auch in der information_schema nicht auf.