sql >> Databasteknik >  >> RDS >> Mysql

MySQL:Hur bestämmer man främmande nyckelrelationer programmatiskt?

Det finns två tabeller du kan fråga för att få denna information:INFORMATION_SCHEMA.TABLE_CONSTRAINTS och INFORMATION_SCHEMA.KEY_COLUMN_USAGE .

Här är en fråga från kommentarerna på den sistnämnda sidan länkad ovan, som visar hur du får den information du söker.

SELECT CONCAT( table_name, '.', column_name, ' -> ', 
  referenced_table_name, '.', referenced_column_name ) AS list_of_fks 
FROM INFORMATION_SCHEMA.key_column_usage 
WHERE referenced_table_schema = 'test' 
  AND referenced_table_name IS NOT NULL 
ORDER BY table_name, column_name;

Använd ditt schemanamn istället för 'test ' ovan.



  1. Slå samman två tabeller i en SQL-fråga och gör datumvärdena unika

  2. Varför finns null<>null=null i mysql

  3. Hur delar jag en sträng så att jag kan komma åt objekt x?

  4. php-kod för att testa pdo är tillgänglig?