我一直在思考处理这个数据库结构的最佳方法。到目前为止,我所拥有的是:
表类别
- cat_id (PK)
- 标题
表子猫
- sc_id (PK)
- cat_id (FK)
- 标题
这一切都很好,因为我可以按如下方式使用它:
- 汽车 -> 马自达
- 计算机硬件-> CPU
- 服装 -> 男 :: 裤子
- 汽车零件 -> 马自达 :: 扰流板
- ...
问题是我如何才能最好地构建数据库以进一步利用每个类别中的精华。汽车数据将需要很多仅适用于汽车的字段,而另一个类别可能需要完全不同的东西。
应该说会有很多类别。
我一直在思考处理这个数据库结构的最佳方法。到目前为止,我所拥有的是:
表类别
表子猫
这一切都很好,因为我可以按如下方式使用它:
问题是我如何才能最好地构建数据库以进一步利用每个类别中的精华。汽车数据将需要很多仅适用于汽车的字段,而另一个类别可能需要完全不同的东西。
应该说会有很多类别。
可能是创建一个表“详细信息”,建立这样的东西
= ItemId === DetailId === DetailValue =
| Somecar1 | 1 | Blue |
| Somecar2 | 2 | Four |
| Somecar2 | 1 | Pink |
| Somecar2 | 2 | Two |
=======================================
其中 DetailId 指的是这样的东西,detailreference;
= CategoryId === DetailId === DetailString =
| 1 | 1 | Color |
| 1 | 2 | Doors |
============================================
如果要获取 Somecar1 的信息,则应查询 Details 表中的数据,然后查询 detailreference 以获取存储在特定数字内的特定类别的详细信息类型。