【MySQL】E-R图-关系数据模型-3NF--精讲+练习(巨全面)

一.知识储备

E-R图

E-R图,即实体-关系图(Entity-Relationship Diagram),是数据库建模的一种工具,用于表示实体类型、属性以及它们之间的关系。

在E-R图中,实体用矩形表示,属性用椭圆表示,而它们之间的关系用菱形表示。实体之间通过线连接,并在连接线上标明它们之间的基数关系,如1:1、1:n或n:m等。

E-R图的设计是数据库逻辑结构设计的重要步骤,它能够帮助设计者清晰地理解数据间的关系,并为数据库的物理结构设计打下基础。

关系数据模型

关系数据模型是基于集合论的模型,它使用二维表格形式来表示数据,每个表包含多个记录,记录由多个数据项组成,每个数据项对应一个域。关系数据模型中最基本的操作包括选择、投影和连接等,这些都是关系代数的基本操作。

关系模型的核心是关系模式,它定义了表的架构,包括表名、属性名和它们的域。关系模型的优势在于其简洁性和强大的查询能力,它屏蔽了底层实现的细节,使得数据操作更加直观和易于理解。

3NF

第一范式

定义
### ER练习题与数据库设计实例 ER(实体-关系)是数据库设计中的重要工具,用于描述现实世界中的实体及其之间的关系。以下是针对ER练习题和数据库设计实例的详细资源与示例: #### 1. 练习题集 一份全面的ER练习题集可以帮助用户深入理解实体关系模型[^1]。该资源涵盖了学校、企业、医院等多个场景的实例,每个案例都经过精心设计,并配有参考答案,适合初学者和进阶者使用。 #### 2. 数据库设计步骤 在进行数据库设计时,通常需要经历以下几个阶段: - **需求分析**:明确系统的需求。 - **概念结构设计**:通过ER表示实体及其关系。 - **逻辑结构设计**:将ER转换为DBMS支持的数据模型[^2]。 #### 3. 科研项目管理数据库设计 以下是一个具体的科研项目管理数据库设计实例[^3]: - **实体**: - 科研项目组(属性:项目组ID、名称) - 科研人员(属性:人员ID、姓名) - 科研项目(属性:项目ID、名称) - **关系**: - 每个科研项目组可以有多个科研人员,每个科研人员可以属于多个科研项目组(多对多关系)。 - 每个科研项目组可以负责多个科研项目,每个科研项目只能有一个科研项目组负责(一对多关系)。 - 每个科研人员可以参与多个科研项目的工作,每个科研项目由多个科研人员参与工作(多对多关系)。 #### 4. 弱实体与多值属性 在ER中,弱实体是指依赖于另一个实体存在的实体,其与强实体的联系只能是1:1或1:N的关系[^4]。例如,学生实体和成绩单实体之间,成绩单依赖于学生实体而存在。 多值属性是指某个实体的某个属性可以有多个不同的取值,用双线椭圆表示。例如,一本书的分类属性可以有多个值,如科学、医学等。 #### 5. 关系模型转换 当两个实体之间存在n:m的关系时,可以通过创建一个新的关系模型来表示这种关系。例如,A与B是n:m的关系,可以创建一个关系模型C,将A的主码a和B的主码c放入C中作为主码,并将两者联系的属性e放入C中[^5]。 ```sql CREATE TABLE C ( a INT, c INT, e VARCHAR(255), PRIMARY KEY (a, c), FOREIGN KEY (a) REFERENCES A(a), FOREIGN KEY (c) REFERENCES B(c) ); ``` ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值