【发布时间】:2014-03-05 17:09:19
【问题描述】:
我需要一些帮助来为一个关于家具的 PHP 网站设计我的数据库。
我有很多主要类型,那就是应用领域。例如办公室、户外等。
我有皮革、布料等类别。
一个类别可以有多种类型。例如,布类物品可以在办公室和户外使用,例如,皮革不能在办公室使用。
每个类别都有一个名为“链接”的字段,用于存储要在 PHP 页面菜单中显示的图像。
一个页面也有一个语言字段来显示不同语言的描述。
每个类别里面都有很多产品。某些类别与内部的其他类别具有相同的产品。
例如,
- 皮革可用于办公室制作皮椅。
- 可以在办公室使用布制物品制作布艺沙发。
- 但是皮革制品也可以在户外制作皮椅。
所以同一个产品可以分为两个类别。
一个产品有许多模型图像(后视图、前视图、红色、黑色等)。
有些产品有一种技术图表,而另一些产品有另一种技术图表。例如,对于布椅,我不想显示宽度,而对于皮椅,我想显示它是否易碎。技术图表也有不同的语言。
这是我的第一个大型数据库。
下面的方案可以吗?还是我有概念缺陷?
(我添加了管理员,因此可以添加或取消产品或类别。)
为了澄清,我或多或少有这个:
- 类型:办公室、户外、汽车、航海、合同、休闲
- 类别:皮革、仿皮、布、特卫强
- 产品:椅子、沙发、雨伞、桌子、罩子……
每个产品都可以只属于一个类别,但可以用于不止一种类型。因此,例如,椅子可以仅由皮革制成,但可以用于多种类型。
当我在我的网站上选择一种类型时,我想显示该类型中的类别(类别可以在类型之间共享),然后我想选择该类别中的产品并查看可以使用哪种类型。
这是一个更新的数据库方案:
【问题讨论】:
-
是页面还是产品需要不同语言的描述?
-
技术图表需要用不同的语言完成。并且对于类别的简要描述必须用不同的语言和不同的类型来完成。 (例如,如果我在类型学办公室,我想写字,我的皮革耐墨水,而如果我在户外,我想写我的皮革耐紫外线。
-
IMO:类型学和类别之间的关系是隐含的,不像你描述的那样明确。您的产品表应该有一个类别和一个类型。类别和类型之间的关系基于两者兼有的产品。否则,根据您的设计,您可以拥有一个布艺沙发(即类别 = 布艺)。它隐含了办公室和户外的类型。
-
但我无法将产品链接到通过 trought 类别的类型学?
-
@AgRizzo 对不起,我的错,你是对的,我受到网站设计的影响,因为每个类型都有不同的类别。我的意思是:如果我选择户外->我应该只看到属于户外的类别如果我选择办公室->我应该看到属于办公室的类别(其中一些可以是共享的)并且每个产品都可以用于更多不止一种类型
标签: mysql database database-design