这个逻辑关系乍看起来比较复杂,弄清楚了就好!
有两个表,
student(
id,
name,
primary key (id)
);
studentInfo(
id,
age,
address,
foreign key(id) references outTable(id) on delete cascade on update cascade
);
当我们删除student表的时候自然希望studentInfo里的相关信息也被删除,这就是外键起作用的地方。
外键有一个原则,就是一个表的外键必须是另一个表的主键,如studentInfo表的外键是id,是student表的主键。前者是从表,后者是主表,如studentInfo是从表,student是主表。
foreign key(id) references outTable(id) on delete cascade on update cascade,这句话的意思是,设置student表的id为studentInfo表的外键,student表里的信息有任何的delete或者update的时候,studentInfo里的信息也要随之改变。