将产品版本的范围与属性匹配

时间:2013-04-03 19:55:20

标签: database database-design database-schema

我正在考虑将一些产品规格转移到数据库中。目前,它们是在一种自制的XML文本文件中实现的。例如,如果我们的产品是袜子,并且我们想要通过该袜子的版本来跟踪颜色,它将看起来像:

<SOCK ID>
  <COLOR>
      <VERSIONS>
        <LOW_000_HIGH_103  "Yellow">
        <LOW_114_HIGH_999  "Blue">
      </VERSIONS>
    </COLOR>
</SOCK ID>

规格往往相当稳定,因此有很多版本没有变化。所以我的问题是如何最好地表示这是一个数据模式。

我的想法是为唯一的规范创建一个表,然后一个辅助的多对一表将每个产品ID和版本#与相应的规范相匹配。当然,如果它与产品和范围匹配到规范,在SQL中是否可能,或者是否有更好的其他模式会很好?

编辑:我找到了this解决方案,它建议将指定的开始和结束范围值作为字段。

1 个答案:

答案 0 :(得分:0)

如果我理解正确,您有产品,每个产品都有版本,每个版本都可能包含一些属性。

我认为你的方法很好。只需将您可以处理的所有数据存储在各种关系中。

SQL非常灵活,您可以使用它获得相当的创意。我首先简单地以一种直观的方式存储数据,供您思考。当您需要进行范围查询时,您可能需要考虑如何编写查询,但这是可能的。

请记住,您可以执行诸如在SQL中进行数据透视(将行转换为列)或将数据分组甚至将数据放入内存中的临时表以帮助将数据慢慢形成类似于您想要的内容的操作。