关于数据库冗余字段及适当性
依个人理解,冗余字段就是本存在一张表的字段,也出现在另一张表中。
例如:有三张表,用户表、商品表、订单表,用户表中有字段name,而订单表中也存在字段name。
对于这个字段冗余有好有坏
好:
从用户表、商品表、订单表说起,当我需要查询“订单表”所有数据并且只需要“用户表”的name,一般都可以通过数据库连接(join)查询,
例如“商品表”存在字段-->用户的id,“订单表”存在字段-->商品的id,我可以查询所有订单,通过订单中商品id查询对应商品,然后对应查询用户name,
如果当表多起来时,例如1000张表(“有点夸大了,请谅解”),为了得个用户表中的name,这查询的速度就可想而知了。
这时给订单表加个字段name,则直接查询该订单就完成了需求,简单明了。
不好:
同上,这时候对用户name字段增删改,对应也要对订单表中的字段增删改,这时还要去了解所有表中的冗余字段,以防有些表中的字段没对应修改。
针对这种情况,看需求,如果影响不大,利于开发效率,可适当的增加冗余字段。
注意:这是小白第一次写博客,有些举例有点不符合实际开发,望大牛们谅解。
版权声明:本文为不会代码的小白原创文章,未经允许不得转载。