电子商务项目的 ER 图示例
实体关系图(ERD)
ERD 是数据模型的可视化表示,用于表示数据库的结构。它是数据库设计中一个强大的工具,能够以图形方式展示数据库的逻辑结构。ERD 对于理解系统中不同实体之间的关系特别有用。
ERD 图概念
实体:实体是数据库中表示的对象或概念,通常是名词。例如,在大学数据库中,实体可能包括学生、课程和教授。
属性:属性是描述实体的属性或特征。例如,学生实体可能具有学生 ID、姓名和出生日期等属性。
关系:关系描述了实体之间的关系。它们在实体之间建立连接,可以是一对一、一对多或多对多。例如,学生实体可能与课程实体之间存在“获取”关系。
基数:基数定义了关系中实体之间的数值关系。它表示一个实体中有多少个实例与另一个实体相关。常见的基数包括一对一 (1:1)、一对多 (1:N) 和多对多 (M:N)。
主键:主键是实体内记录的唯一标识符。它有助于确保每条记录都能被唯一标识。
外键:外键是表中引用另一个表主键的字段。它在两个表之间建立链接。
弱实体:弱实体是指无法仅通过自身属性来唯一标识的实体,需要依赖相关实体来提供标识。
确定主要实体:
用户实体:
-客户
-管理员
-卖家
产品实体:
-产品
-类别
-品牌
订单实体:
-订单
-订单项
付款实体:
-付款
-付款方式
识别属性:
客户实体属性:
-客户ID(主键)
-姓名
-电子邮件
-地址
-电话
产品实体属性:
-产品ID(主键)
-名称
-价格
-描述
-库存数量
订单实体属性:
-OrderID(主键)
-OrderDate
-TotalAmount
-Status(例如,待处理、已发货)
付款实体属性:
-PaymentID(主键)
-金额
-PaymentDate-
状态(例如,成功,待定)
定义关系:
客户订单关系:
- 一个客户可以下多个订单(一对多)。
- 在订单实体中添加一个引用 CustomerID 的外键。
订单-订单项关系:
- 一个订单可以有多个订单项,并且每个订单项只属于一个订单(一对多)。
- 在订单项实体中添加引用 OrderID 的外键。
产品-订单项关系:
-一个产品可以包含在多个订单项中,并且每个订单项与一个产品相关联(多对一)。-
在订单项实体中添加引用产品 ID 的外键。
客户付款关系:
- 一个客户可以进行多次付款(一对多)。
- 在付款实体中添加一个引用 CustomerID 的外键。
基数:
客户-订单基数:
一个客户可以下多个订单,但每个订单都由一个客户下达。
订单-订单项基数:
一个订单可以包含多个订单项,但每个订单项都属于一个订单。
产品-订单项基数:
一个产品可以包含在多个订单项中,但每个订单项都与一个产品关联。
客户-付款基数:
一个客户可以进行多次付款,但每次付款都由一个客户进行。