0

我一直在为网站创建我的第一个数据库,并创建了下面的图表。这看起来是否适用于业务和类别以及类别和子类别之间的多对多关系?

你能看出它有什么问题吗?

我的数据库

4

3 回答 3

2

看起来不错,尽管 category_link_table 可能有问题。除非您的业务需求允许链接到类别或子类别,否则不要在链接表中同时存储主类别和子类别 ID。仅存储子类别 ID。

两者都在那里,您可能最终会遇到 categoryID/subcategoryIDs 不匹配的情况,其中您从类别“A”和类别“B”中的子类别“p”中获得了一些东西。

于 2011-07-08T15:47:14.723 回答
1

一些评论:

  1. 我认为不需要 Link_table 中的 ID 字段。business_id,category_id 应该是唯一的。

  2. 您的子类别表设置似乎很奇怪,您有一个链接表。我原以为每个子类别都会有一个父类别的字段(category_id)。如果事情是有一个带有 parent_catagory_id 的目录表并在一个表上进行自我连接,我更喜欢这种类型。

于 2011-07-08T15:49:51.973 回答
1

一般来说,我会为您的表确定命名约定。我更喜欢“business”而不是“business_data”——它反映了业务领域,而不是技术问题。

我还会以不同的方式命名您的链接表 - 通常,“business_category”更清晰,“category_subcategory”也是如此。

于 2011-07-08T16:10:34.197 回答