码迷,mamicode.com
首页 > 数据库 > 详细

mysql foreignkey

时间:2018-10-16 02:00:40      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:res   for   员工   大量   dep   asc   关联   unique   ESS   

1.foreign key

当数据足够大的时候,字段会出现大量重复,

解决:额外定义一个大量冗余的字段表,(有id) 一张是关联表(从表),一张是被关联表(主表)

进行关联的时候 ,先创建被关联表, 现在被关联表添加,再是关联表

constraint fk_dep foreign key(dep_id) references dep(id) 

在创建关联表 但是再修改出现问题是先删除这个部门的员工才能删除这个部门



关联表升级:
    on delete cascade #同步删除
    on update cascade #同步更新
就可以同步删除了

2.

因为有foreign key 的约束 ,使表有了三种关系

多对一  书 出版商 (一个出版商可以出版多种书  而一本书只能由一个出版商出,因为版权)

先创建出版商,在创建书 (含有

 constraint fk_book_press foreign key(press_id) references press(id)
    on delete cascade
    on update cascade
);

)

多对多 书 作者  (作者可以写多本书,书也可由多个作者)

这样是无法创建foreign ke关系的,可以创建第三张表存放

1.创建书 和 作者 2.创建出一个表明关系的表  3.放入作者和作者的作品.4.在公共表放上数据(

insert into author2book(author_id,book_id) values

)

一对一

在其中一个加上unique

 









































































































































































































































mysql foreignkey

标签:res   for   员工   大量   dep   asc   关联   unique   ESS   

原文地址:https://www.cnblogs.com/zhangqing979797/p/9795211.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!