数据库系统学习笔记(2)
第一章-数据模型(2)
目录
1. 数据模型
1.1 数据模型的定义
- 一种模型,对现实世界数据特征的抽象
1.2 概念模型(可以说是数据模型,也可说不是数据模型)
- 观念世界的模型
1.3 逻辑模型和物理模型
- 都是数据模型
- 之间存在映射关系
模型 | 说明 |
---|---|
逻辑模型 | 也称为模式,应用程序员可见 |
物理模型 | 称为内模式,系统程序员可见,应用程序员不可见(了解少) |
逻辑模型的种类(三大常见的)
- 层次模型
- 网状模型
- 物理模型
1.4 概念模型(观念世界)
- 一些基本概念
概念 | 说明 |
---|---|
实体 | 客观存在可相互区别的事物 |
属性 | 实体所具有的某一特征 |
码(key) | 唯一标识实体的属性集(不同的人具有不同的属性,属性的值可以相同,也可以不相同,但总有不相同的,而只要有一个属性不同,属性集也就不同,人与人之间就可以区分了,**简而言之,一个属性组(可以区分一个实体) **) |
实体型 | (实体名+属性集)->某一类实体(实体型),比如学生这一类,而不是指某个特定学生 |
实体集 | 实体的结合,全体学生(各个单个学生的集合) |
1.5 概念模型(观念世界)一种表示方法(e-r图)
在ER图中有如下四个成分:
矩形框:表示实体,在框中记入实体名。
菱形框:表示联系,在框中记入联系名。
椭圆形框:表示实体或联系的属性,将属性名记入框中。对于主属性名,则在其名称下划一下划线。
连线:实体与属性之间;实体与联系之间;联系与属性之间用直线相连,并在直线上标注联系的类型。(对于一对一联系,要在两个实体连线方向各写1; 对于一对多联系,要在一的一方写1,多的一方写N;对于多对多关系,则要在两个实体连线方向各写N,M。)
- 图解
1.6 数据模型的组成要素
- 数据结构
- 数据操作
- 数据的完整性约束
组成要素 | 说明 |
---|---|
数据结构 | 首先有数据,描述数据库的组成对象(数据)及其联系 |
数据操作 | 查询,更新(修改,增,删) |
数据的完整性约束 | 一组规则(语法),保证数据在表面上(语义上)完整(正确),不能保证正确(客观世界的正确反映) |
1.7 三大完整性约束
- 实体完整性约束
- 参照完整性约束
- 用户定义完整性约束
参考网址
<(1条消息) 关系模型中的三类完整性约束:实体完整性、参照完整性和用户定义完整性_qq_17616的博客-CSDN博客_实体完整性>
2. 关系模型
- 优点:简单,容易学习
- 缺点:速度慢
2.1 关系模型的数据结构
学号 | 姓名 | 年级 |
---|---|---|
2001 | bob | 大一 |
2002 | judy | 大二 |
。。。 | 。。。 | 。。。 |
-
关系:一张表,如上图
-
元组:表中的一行
-
属性:表中的一列
-
码(key):可以确定一个元组的属性组(如学号,通过学号就可以确定一个学生)
-
域:属性的取值范围来自域(相同数据类型值的集合)
-
分量:元组中的一个属性值
标签:
学习
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!