This topic created in 3086 days ago, the information mentioned may be changed or developed.
比如商品,商品分好几种类型,不同类型有自己的独有属性,那么设计的时候两种方案:
1. 一个类型设计一张表
2. 一张表,然后有个类型字段,属性都放这个表里面
优劣比较:
1. 逻辑清晰,但是维护多张表会麻烦,比如修改删除会操作多张表
2. 只需对一张表操作,但是字段属性看着会比较乱
还需要考虑什么呢?如何取舍?
6 replies • 2017-12-20 13:48:55 +08:00
 |
|
1
jtsai Dec 18, 2017 via Android
属性要分表
|
 |
|
3
yuhuigreed Dec 18, 2017
一张属性表、一张商品表。商品表里面有个属性 ID 字段关联属性。
|
 |
|
4
yang2yang Dec 18, 2017
方法一:一张属性表、一张商品表。属性表里面有个外键关联商品。不过这种方式每次都要 join 操作。如果还有其他表关联,以后会 join 越来越多的表。找数据很麻烦。 方法二:野方法。直接在商品表里面弄个属性字段,这个字段放一个 json 串来表示属性,这种方式每次只要查一种表,但是以后会越来越乱,不合适,可能适合一些小功能的实现吧。
|
 |
|
5
saulshao Dec 18, 2017
下面是扩展性比较好的设计: 1. 商品类型表 - 这个表只保存商品类型本身的信息,例如英文名字,ID,中文名字等等 2. 商品类型可能有的属性表: - 这个表保存商品具备的所有属性,你可能还需要一个表来维护属性的"属性"(主要给开发用) 3. 商品和商品类型的对应关系表: - 商品和商品类型的对应关系。 3. 商品对应的属性值表: - 保存商品与属性值对应关系。
|
 |
|
6
alvy Dec 20, 2017
谢谢楼上几位,我再思考思考
|