information_schema.referential_constraints 表用于查看外键约束
1、information_schema.referential_constraints表的常用列:
1、constraint_schema :约束(外键)所在的库名
2、constraint_name :约束名(外键名)
3、unique_constraint_schema :被引用约束所在库名
4、unique_constraint_name :被引用约束名
2、例子:
1、定义一对有外键约束的表:
create table teacher( id int not null auto_increment, name varchar(4), constraint pk__teacher primary key(id), constraint ix__teacher__name unique index (name)) engine=innodb default char set utf8; create table student( id int not null auto_increment, name varchar(4), teacher_id int not null, teacher_name varchar(4), constraint pk__student primary key(id), constraint fk__student__id foreign key (teacher_id ) references teacher(id), constraint fk__student__teacher_name foreign key (teacher_name) references teacher(name) on delete no action on update cascade) engine=innodb default char set utf8;
2、查看外键约束
select * from information_schema.referential_constraints \G *************************** 1. row *************************** CONSTRAINT_CATALOG: def CONSTRAINT_SCHEMA: tempdb CONSTRAINT_NAME: fk__student__id UNIQUE_CONSTRAINT_CATALOG: def UNIQUE_CONSTRAINT_SCHEMA: tempdb UNIQUE_CONSTRAINT_NAME: PRIMARY MATCH_OPTION: NONE UPDATE_RULE: RESTRICT DELETE_RULE: RESTRICT TABLE_NAME: student REFERENCED_TABLE_NAME: teacher *************************** 2. row *************************** CONSTRAINT_CATALOG: def CONSTRAINT_SCHEMA: tempdb CONSTRAINT_NAME: fk__student__teacher_name UNIQUE_CONSTRAINT_CATALOG: def UNIQUE_CONSTRAINT_SCHEMA: tempdb UNIQUE_CONSTRAINT_NAME: ix__teacher__name MATCH_OPTION: NONE UPDATE_RULE: CASCADE DELETE_RULE: NO ACTION TABLE_NAME: student REFERENCED_TABLE_NAME: teacher