课程
/数据库
/MySQL
/数据库设计那些事
这种情况在商品表中加一个分类ID会有问题吗?多加一张表 不会增加查询多复杂性吗?
2015-10-04
源自:数据库设计那些事 2-5
正在回答
1、经验之谈, 关于商品分类信息,是会冗余在商品表里的。 简化查询,增加了缓存利用率。
2、至于更新商品类型,是在商品类型表里去更新,不会影响之前冗余在商品表里的类型描述。
3、想要更新商品表里的类型, 可以单独修改商品表里的类型。 不会影响分类表的描述。
4、商品表里冗余数据,是从实际角度出发,不会出现经常更新的数据才会做冗余;商品一旦上线后,就不允许经常 修改类别了, 一般情况上线后的商品信息都是静态数据。 (商品表设计时考虑:动态和静态数据分离)
第二范式和BC范式的区别是:
第二范式消除复合关键字和非主属性之间的传递依赖;
BC范式定义的情况是一个表可以由多个复合关键字来确定,比如(A,B)和(B,C)都能作为关键字,但是他们之间存在传递依赖,BC范式就是消除多个复合关键字之间传递依赖的。
小白之英俊潇洒 提问者
举报
本教程从数据库设计基本理论入手,教你设计简洁高效数据库结构
2 回答第三范式这个例子的实例解决方法跟第二范式的例子一样,都是三张表解决的
2 回答这个例子和第三范式例子 的区别?
3 回答如果所有单关键字的表都符合第二范式,那么给所有不符合第二范式的表加上一个属性id,不就都符合第二范式了吗?
4 回答我总是很分不清第二范式和第三范式
1 回答讲范式时每个表优化后都拆分了三张表,感觉两个就够了 比如第三范式的例子 商品分类直接放入到商品表中的一个属性,在更新查询时是不是效果更好呢?