MySQLでは、特定のテーブルや特定の列を指すすべての外部キー制約のリストを取得するにはどうすればいいでしょうか?これは、このOracleの質問ただし、MySQL の場合です。
ベストアンサー1
テーブルの場合:
SELECT
TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME
FROM
INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE
REFERENCED_TABLE_SCHEMA = (SELECT DATABASE()) AND
REFERENCED_TABLE_NAME = '<table>' \G
列の場合:
SELECT
TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME
FROM
INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE
REFERENCED_TABLE_SCHEMA = (SELECT DATABASE()) AND
REFERENCED_TABLE_NAME = '<table>' AND
REFERENCED_COLUMN_NAME = '<column>' \G
基本的には、条項内REFERENCED_TABLE_NAME
で変更します。REFERENCED_COLUMN_NAME
WHERE