七度&光 2008-10-14 15:18 采纳率: 100%
浏览 336
已采纳

如何看待表或列的所有外键?

In MySQL, how do I get a list of all foreign key constraints pointing to a particular table? a particular column? This is the same thing as this Oracle question, but for MySQL.

转载于:https://stackoverflow.com/questions/201621/how-do-i-see-all-foreign-keys-to-a-table-or-column

  • 写回答

11条回答 默认 最新

  • python小菜 2008-10-14 15:35
    关注

    For a Table:

    SELECT 
      TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME
    FROM
      INFORMATION_SCHEMA.KEY_COLUMN_USAGE
    WHERE
      REFERENCED_TABLE_SCHEMA = '<database>' AND
      REFERENCED_TABLE_NAME = '<table>';
    

    For a Column:

    SELECT 
      TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME
    FROM
      INFORMATION_SCHEMA.KEY_COLUMN_USAGE
    WHERE
      REFERENCED_TABLE_SCHEMA = '<database>' AND
      REFERENCED_TABLE_NAME = '<table>' AND
      REFERENCED_COLUMN_NAME = '<column>';
    

    Basically, we changed REFERENCED_TABLE_NAME with REFERENCED_COLUMN_NAME in the where clause.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(10条)

报告相同问题?