数据库表结构为什么需要三张表之一对多表结构设计

说完一对一的表结构设计,咱们现在说一下一对多表结构的设计。
首先一对多表结构的设计是在咱们在开发中应用最多的一个,这个设计是非常重要的,所以必须要掌握。

举个例子,咱们搞了一个叫员工的表结构,还有叫部门的一个表结构。这2张表如果从真正的需求上讲的话,其实就是一个一对多。

怎么理解呢,很简单,咱们一个部门下是可以有很多个员工的,但是员工表里面的员工它只属于某一个部门,所以这就是一个标准的一对多表结构,这是一个场景。

再举个例子,假如说我们有一个用户表,还有一个叫订单表,这2张表其实也可以是一个一对多的关系。用户表还可以把它叫做一方表,订单表咱们也可以把它叫多方表,这个怎么理解?假如双11的时候,用户A买很多的产品,它生成了一个订单,到双12用户A买了很多商品,它又生成了一个订单,这就表示一个用户可以产生多个订单,对吧。反过来一个订单它只能属于某一个用户,对吧。所以,这也是一个标准的一对多。如果以后大家在生活中或在真正的需求当中遇到类似这样的场景的话,那么咱们就可以把这种场景用一对多表结构的方式来设计就OK了。

清楚了这个场景,我们如何设计一对多表结构呢?

首先一对多表结构设计,它包含的是两张表,那两张表咱们一般有一个叫法,我们把一方表又称之为主表,就像咱们这个部门表,还有用户表;还有多方表也可以称之为从表,就好比说上面的员工表或者是订单表,它都属于多方,所以说一对多应该是两张表。

接下来我们讲一下一对多建表的原则。

那怎么来创建这2张表呢?原则是要在多方表当当中添加一个字段,咱们把这个字段作为外键,然后让它指向一方表的主键ÿ

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值