Sql 链接不同类型的产品表
我有一个问题,我正在设计一个数据库,将存储不同的产品,每个产品可能有不同的细节。 例如,它需要存储具有多个作者的书籍和具有不同类型描述的软件。 这是我目前的设计:Sql 链接不同类型的产品表,sql,database,Sql,Database,我有一个问题,我正在设计一个数据库,将存储不同的产品,每个产品可能有不同的细节。 例如,它需要存储具有多个作者的书籍和具有不同类型描述的软件。 这是我目前的设计: Product_table |ID|TYPE|COMPANY| |1|1|1| attr_table |ID|NAME| |1|ISBN10| |2|ISBN13| |3|Title| |4|Author| details_table |ID|attr_id|value |1|3|Book of adventures|
Product_table
|ID|TYPE|COMPANY|
|1|1|1|
attr_table
|ID|NAME|
|1|ISBN10|
|2|ISBN13|
|3|Title|
|4|Author|
details_table
|ID|attr_id|value
|1|3|Book of adventures|
Connector_table
|id|pro_id|detail_id|
|1|1|1|
因此,product表将只存储主产品id、它所属的公司和它所属的产品类型。
然后我会有一个属性表,其中列出了产品可能具有的每个属性,这将使添加新类型的产品更容易。
详细信息表将保存所有值,例如不同的作者、标题isbn10s等。
然后连接器表将连接product表和details表
我主要担心的是,details表将变得非常大,并且将存储大量不同的数据类型。
我想要的是将所有不同的类型分成表,比如ISBN表和author表
如果是这种情况,我如何将这些表链接到attr_表
任何帮助都将不胜感激。不用麻烦了。您没有说您正在使用什么数据库,但是任何合理的数据库都能够处理details表。数据库被设计为高效地处理大型表
如果它真的很大,您可能需要考虑通过某种主题对表进行分区。
否则,只需确保在表中的id上有索引,也可能在attr_id上有索引。结构应该可以正常工作。只是一个想法,但是您是否考虑过使用文档数据库来代替?有时事情与关系模型不太匹配。查找MongoDB或Couchbase,只需阅读一些关于它们的信息。感谢您为没有提及我使用带有php前端的mysql的数据库而道歉,您认为它可以处理细节表或连接器表吗,因为我确信它们会变得非常大?如果非常大,您指的是数百万行,那么在合理的硬件上您就可以了。