Это решение будет отображать не только все отношения, но и имя ограничения, которое требуется в некоторых случаях (например, отбрасывание):
select
concat(table_name, '.', column_name) as 'foreign key',
concat(referenced_table_name, '.', referenced_column_name) as 'references',
constraint_name as 'constraint name'
from
information_schema.key_column_usage
where
referenced_table_name is not null;
Если вы хотите проверить таблицы в конкретной базе данных, в конце запроса добавьте имя схемы:
select
concat(table_name, '.', column_name) as 'foreign key',
concat(referenced_table_name, '.', referenced_column_name) as 'references',
constraint_name as 'constraint name'
from
information_schema.key_column_usage
where
referenced_table_name is not null
and table_schema = 'database_name';
Аналогично, для конкретного имени столбца добавьте
и table_name = 'table_name
в конце запроса.
Вдохновленный этим постом здесь