Mysql之三少一多原则

1. 联合主键尽量小,因为任何查询,二级索引都会用到主键索引,所以主键越大,占用的空间就越大

2.表的字段尽量少,字段越少,占用空间越小

3.表的数量尽量少,因为如果一个系统所建的表越少,那么系统肯定越简洁,维护代码,数据库也越简单,例如我在开发中遇到这样一个例子,现在一些属性的值是可选的,就是例如投资年限,它只有1,2,3年选,那为了维护方便,这些值就要存在数据库里面,需要用的时候再从数据库拉取,我一开始建了一个表a,里面有字段,属性名,值,分别是string和int类型,因为大多数的值都是int类型,但现在新加了一个属性,这个属性的值是用string的,我当时的想法就是新加一个表去单独存储这个属性,这是不对的,因为如果以后还有其他的配置同样是string,那岂不是又要加一个表?正确的做法是把原来的表改为attribute,str_value,int_value,若其中一个为空就读取另外一个,这样即不用去改代码,又不用去加表,这才是正确的做法。

4.主键尽量,外键用得尽量多,数据库的设计实际上就是定义各种表,以及各种字段之间的关系。这些关系越多,证明这些实体之间的冗余度越低,利用度越高。这样做的好处在于不仅保证了数据表之间的独立性,还能提升相互之间的关联使用率。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值