多表的关系
一对多关系:
客户和订单、分类和商品、部门和员工。
一对多建表原则:
在多的一方创建一个字段,字段作为外键指向一方的主键。
代码(以商品和分类为例,其中商品是多方,分类是一方。)
商品表:product(多) pid
分类表:category(一) cid
通过外键约束,代码如下:
alter table product add foreign key (pid) references category(cid);
多对多关系:
学生和课程
多对多关系建表原则:
需要创建第三张表,中间表中至少两个字段,这两个字段分别作为外键指向各自一方的主键。
代码(以订单和商品为例,其中订单和商品都是多方。)
订单表:orders(多) id
商品表:product(多) id
在开发中,我们需要把这两个多对多拆分,拆分成两个一对多。
由上建表原则:需要建立第三张表:orderitem (oid,pid)
订单表和订单项表的主外键关系:
alter table orderitem add foreign key (oid) references orders(id);
商品表和订单表单的主外键关系
alter table `orderitem` add foreign key(pid) references product(id);
小奔跳跳
发布了90 篇原创文章 · 获赞 5 · 访问量 1万+
私信
关注