实体关系图,有人可以检查我的erd是否正确吗?

问题描述 投票:0回答:2

有人可以检查我的 ERD,因为我不知道我做得是否正确。我不确定强实体和弱实体之间的区别,我确定强实体有自己的主键。

除此之外,我需要将 Payment_ID 作为订单表中的外键是否正确?以及我的订单表中还可以有哪些其他属性

也许有一些关于在我的 ERD 上添加或改进内容的建议。这里有我的 ERD 的图像。谢谢你

实体关系图

erd
2个回答
0
投票

PAYMENT
有一个
ORDER_ID
并且
ORDER
有一个
PAYMENT_ID
。拥有这两个字段是多余的,我会删除
ORDER.PAYMENT_ID
,如果客户不立即付款,这将是一个可为空的字段。

ORDER_DETAILS
需要 PK,可以是代理键
ORDER_DETAIL_ID
ORDER_ID, ITEM_ID
的组合。

一个

PAYMENT
可以只使用一个还是多个
COUPON
?鱼尾纹线上的基数表示不止一个,但
PAYMENT.COUPON_ID
字段只允许一个。
PAYMENT_ID
表中可空的
COUPON
会是更好的选择。

您有一些可疑的最小基数。一个

CUSTOMER
必须至少放置一个
ORDER
?好吧,我可以接受。一个
EMPLOYEE
必须至少有一个
ORDER
?所以公司里的每个人都必须接受命令,而在员工接受命令之前你不会记录他们吗?另外,每个
ITEM
都必须在
ORDER_DETAILS
中引用?您不想在订购之前记录所提供的商品吗?

最后,关于术语的说明:您的图最好称为表格图,而不是 ERD。要称为实体关系图,图必须区分实体关系模型的概念。您使用的图表样式无法区分实体集(即 ID 字段)与值集(非 ID 字段)或实体关系(具有单字段 PK 的表)与关系关系(具有复合 PK 的表,即

ORDER_DETAILS
是关系关系)。


0
投票

+--------------------+ +--------------------+ +-------- ----------+ | 客户| | 订单| | 产品 | +--------------------+ +--------------------+ +-------- ---------+ |客户 ID (PK) | <---- | Order_ID (PK) | +--> |产品 ID (PK) | |名称 | |订单_日期 | | |产品名称 | |联系我们 | |订单状态 | | |产品类别| |在线商店网站 | |客户 ID (FK) | | |产品_指南| +--------------------+ +--------------------+ | +-----------------+ | Tracking_ID (FK) |
+------------------+ | | | +-----------------+ | | 追踪 | | +-----------------+ | | Tracking_ID(PK)| | |追踪号码 | | |追踪网站 | | +-----------------+ | | | +----------------------+ | 订单_产品 | +----------------------+ |订单 ID (FK) | |产品 ID (FK) | |数量(可选)| |价格(可选)| +----------------------+

© www.soinside.com 2019 - 2024. All rights reserved.