与结实体有关系吗?

时间:2011-03-08 21:11:07

标签: database database-design data-modeling erd

在两个实体之间的多对多关系中,中间会有一个连接实体。

我的问题是,联结实体是否可以与另一个实体建立关系?谢谢! (:

2 个答案:

答案 0 :(得分:1)

是。如果新实体与关系而不是两个父实体相关,那么它肯定是可能的。

一个例子:假设您要跟踪客户(特定产品)的特定购买付款。你将有三个表。

Customer
----------
Customer_ID,
Customer_Name

Product
-------
Product_id,
Product_name

Purchase (Customer-product-association).
-------------------------------------------
purchase_id,
Customer_ID (FK)
Product_ID (FK)
total_transaction_amt.

Payments (child of purchase)
-------------------------------
Payment_id,
purchase_ID

上面的Payments表与Purchase表(一个联结实体)处于父子关系中。其他关系(例如多对多)同样有效。

答案 1 :(得分:0)

当然可以。通常,联结实体将是“弱”实体,基本上意味着它依赖于另一个实体。但是,对于那个弱实体来说,与另一个实体建立关系是完全合法的。

比如说,你有一个简单的审计系统。审计由部分组成。每个部分都在一个单独的表中预定义。因此,您有audit_definition,其中包含审核定义详细信息,section_type,其中包含部分模板,audit_section_definition,它们连接两者,以便您知道每个审核使用哪些部分那种

然后您有一个audit_instance表,其中包含该审计类型的实际审计。要存储该审计实例的部分详细信息,您有一个section_instance表。完全可以想象您需要从section_instanceaudit_section_definition的链接,即使后者是联结实体。