REFERENTIAL_CONSTRAINTS - xiaoboluo768/mysql-system-schema GitHub Wiki

  • 该表提供查询关于外键约束的一些信息
  • 该表为Memory引擎临时表
  • 表定义语句
CREATE TEMPORARY TABLE `REFERENTIAL_CONSTRAINTS` (
  `CONSTRAINT_CATALOG` varchar(512) NOT NULL DEFAULT '',
  `CONSTRAINT_SCHEMA` varchar(64) NOT NULL DEFAULT '',
  `CONSTRAINT_NAME` varchar(64) NOT NULL DEFAULT '',
  `UNIQUE_CONSTRAINT_CATALOG` varchar(512) NOT NULL DEFAULT '',
  `UNIQUE_CONSTRAINT_SCHEMA` varchar(64) NOT NULL DEFAULT '',
  `UNIQUE_CONSTRAINT_NAME` varchar(64) DEFAULT NULL,
  `MATCH_OPTION` varchar(64) NOT NULL DEFAULT '',
  `UPDATE_RULE` varchar(64) NOT NULL DEFAULT '',
  `DELETE_RULE` varchar(64) NOT NULL DEFAULT '',
  `TABLE_NAME` varchar(64) NOT NULL DEFAULT '',
  `REFERENCED_TABLE_NAME` varchar(64) NOT NULL DEFAULT ''
) ENGINE=MEMORY DEFAULT CHARSET=utf8
  • 表字段含义
  • CONSTRAINT_SCHEMA和CONSTRAINT_NAME:表示外键所在的数据库名称和外键名称
  • UNIQUE_CONSTRAINT_SCHEMA,UNIQUE_CONSTRAINT_NAME和REFERENCED_TABLE_NAME:表示外键约束引用的表名、所在的数据库名称和约束名称
  • MATCH_OPTION:唯一有效值是NONE
  • UPDATE_RULE或DELETE_RULE:表示update和delete约束的具体规则。有效值为CASCADE、SET NULL、SET DEFAULT、RESTRICT、NO ACTION。
  • TABLE_NAME:外键所在的表名,与INFORMATION_SCHEMA.TABLE_CONSTRAINTS中的TABLE_NAME的值相同
  • 表记录内容示例
# 使用MySQL样例数据库
root@localhost : information_schema 05:31:15> select * from REFERENTIAL_CONSTRAINTS where CONSTRAINT_SCHEMA='employees' limit 1\G;
*************************** 1. row ***************************
      CONSTRAINT_CATALOG: def
        CONSTRAINT_SCHEMA: employees
          CONSTRAINT_NAME: dept_emp_ibfk_1
UNIQUE_CONSTRAINT_CATALOG: def
UNIQUE_CONSTRAINT_SCHEMA: employees
  UNIQUE_CONSTRAINT_NAME: PRIMARY
            MATCH_OPTION: NONE
              UPDATE_RULE: RESTRICT
              DELETE_RULE: CASCADE
              TABLE_NAME: dept_emp
    REFERENCED_TABLE_NAME: employees
1 row in set (0.00 sec)

上一篇:PROFILING表 |下一篇:ROUTINES表

⚠️ **GitHub.com Fallback** ⚠️