MySQL:如何找出哪些表引用特定的表?

32 mysql foreign-keys

我想删除一个表,但它被一个或多个其他表引用.如何在不必逐个查看数据库中的每个表的情况下找出哪些表引用此表?

小智 70

select table_name
from information_schema.KEY_COLUMN_USAGE
where table_schema = 'my_database'
and referenced_table_name = 'my_table_here';
Run Code Online (Sandbox Code Playgroud)

这有效.

  • 对于新手 - “TABLE_SCHEMA”基本上是您的数据库名称。 (3认同)

Mic*_*uen 6

select table_name 
from information_schema.referential_constraints 
where referenced_table_name = 'parent table here';
Run Code Online (Sandbox Code Playgroud)