[英]How do I see the ON DELETE and ON UPDATE for a foreign key in MySQL?
I'm using this query to find foreign key relationships: 我正在使用此查询来查找外键关系:
SELECT *
FROM `information_schema`.`KEY_COLUMN_USAGE`
WHERE `REFERENCED_TABLE_SCHEMA` = ? AND
`TABLE_NAME` = ? AND
`REFERENCED_TABLE_NAME` IS NOT NULL
It's giving me most of what I need, but the two fields I am missing are 它满足了我的大部分需求,但我缺少的两个领域是
How do I find those properties on a foreign key constraint? 如何在外键约束下找到这些属性?
You can use the INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
table that has the following columns: 您可以使用包含以下列的
INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
表:
CONSTRAINT_CATALOG
CONSTRAINT_SCHEMA
CONSTRAINT_NAME
UNIQUE_CONSTRAINT_CATALOG
UNIQUE_CONSTRAINT_SCHEMA
UNIQUE_CONSTRAINT_NAME
MATCH_OPTION
UPDATE_RULE
DELETE_RULE
TABLE_NAME
REFERENCED_TABLE_NAME
By joining on CONSTRAINT_SCHEMA
and CONSTRAINT_NAME
, you can get the UPDATE_RULE
and DELETE_RULE
. 通过加入
CONSTRAINT_SCHEMA
和CONSTRAINT_NAME
,可以获取UPDATE_RULE
和DELETE_RULE
。
You didn't say, but I assume you're looking for something you can access programmatically? 您没有说,但是我想您正在寻找可以以编程方式访问的内容?
If not, I'm pretty sure SHOW CREATE TABLE ?
如果没有,我很确定
SHOW CREATE TABLE ?
will give you all the info you're looking for. 将为您提供所需的所有信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.