【教资】信息技术(高中)学科知识与技能——第五章 数据库

第五章 数据库

1 数据库系统概述

1.1 基本概念

  1. 数据(data):描述事物的符号记录称为数据,数据室数据系统重存储的基本对象

  2. 数据库(database,DB):数据库是长期存储在计算机内、有组织的、可共享的大量数据的集合

  3. 数据库管理系统(DataBase Management system DBMS):数据库管理系统是位于用户和操作系统之间的一层数据管理软件,用于建立、使用和维护数据库

    功能(背)

    • 数据定义
    • 数据组织、存储、管理
    • 数据操纵
    • 数据库的事务管理和运行管理
    • 数据库的建立和维护
  4. 数据库系统(DataBase System):由数据库、数据库管理系统(及其应用开发工具)、应用程序、数据库管理员(DataBase Administrator,DBA)组成的存储、管理、处理和维护数据的系统

1.2 数据库的特点

  1. 数据的结构化

  2. 数据的共享性、冗余度低和易扩充

    可以被多个用户、多个应用共享使用,数据共享可以避免数据不相容性和不一致性

  3. 数据独立性高

    物理独立性和逻辑独立性

  4. 数据由数据库管理系统统一管理和控制

    (1)数据的安全性保护

    (2)数据的完整性保证

    (3)并发控制:多个用户并发进程同时读写数据库,对并发操作加以控制和协调

    (4)数据库恢复:数据库管理系统将数据库从错误状态恢复到某一已知的正确状态(完整状态/一致状态)的功能

1.3 数据库系统的结构

1.3.1 数据库系统模式的概念

  1. 型(type):对某一类数据的结构和属性的说明
  2. 值(value):型的一个具体赋值
  3. 模式:全体数据的逻辑结构和特征描述,仅涉及型

1.3.2 数据库系统的三级模式结构

  1. 模式

    模式也称为逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图,不涉及数据的物理存储细节的硬件环境,与具体的应用程序、所使用的应用开发工具及高级程序语言设计无关。

    一个数据库只有一个模式

  2. 外模式

    外模式也称为用户模式或子模式,局部数据的逻辑结构和特征描述,是数据库用户的数据视图

    外模式通常是模式的子集,一个数据库可以有多个外模式

  3. 内模式

    内模式也称为存储模式,是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式

    一个数据库只有一个内模式

2 数据模型

数据库系统的核心和基础

2.1 数据模型的组成要素

  1. 数据结构:对系统静态特征的描述,包括层级模型、网状模型和关系模型
  2. 数据操作:对数据库中的对象实例进行的操作,包括增删查改
  3. 数据的完整性约束条件:实体完整性、参照完整性、用户自定义完整性

2.2 数据库模型的分类

2.2.1 概念模型

基本概念:

  1. 实体:客观存在并互相区别的事物及事物之间的联系,如一个学生、一门课程、学生的一次选课

  2. 属性:实体所具有的某一特征,如学生的学号、姓名

  3. 码:唯一标识实体的属性集,如学号、工号

  4. 域:属性的取值范围,如成绩的域为[1,100]

  5. 实体型:实体名及其属性名的集合,如学生(学号、姓名、性别)

  6. 实体集:实体的集合,如全体学生

  7. 联系:实体域实体之间,或实体与其属性之间的关系

    一对一(1:1):

    一对多(1:n):

    多对多(m:n):

E-R图(实体-联系图)

示例:

  1. 实体使用矩形
  2. 属性使用椭圆形
  3. 联系使用菱形
  4. 菱形无向边上标注联系的类型(1,m,n)

在这里插入图片描述

2.2.2 逻辑模型(※背诵)

满足条件优点缺点
层级模型①有且仅有一个节点无父结点,该结点为根结点
②其他节点有且仅有一个父结点
①数据结构简单清晰
②查询效率高
③提供了良好的完整性支持
①节点之间具有多对多的联系时不适用层次模型
②具有多个父结点是,不易使用层级模型
③查询子女结点必须通过父结点
④层次命令趋于程式化
网状模型①允许一个以上的结点无父结点
②一个节点可以有多于一个的父结点
①能更直接地描述现实世界
②具有良好的性能,存取效率高
①结构比较复杂,不利于用户掌握
②数据定义和操纵复杂,不易使用
③记录之间的联系通过存取路径实现,加重了编写应用程序的负担
关系模型①建立在严格的数学概念的基础上
②概念单一,结构简单清晰,用于易懂易用
③具备更高的数据独立性和更好的安全保密性
①存取路径对用户隐蔽,查询效率较低
②增加了开发数据库管理系统的难度

2.2.3 物理模型

数据库在系统层中的实现

3 关系型数据库

3.1 关系的完整性

  1. 实体完整性:关系R的主属性不能存在空值

  2. 参照完整性/引用完整性:描述关系模式中实体与实体间的关系

    举例:删除主表中外键所在列的数据,必须先删除子表对应的数据,否则将破坏参照完整性

  3. 用户定义完整性:针对某一具体的关系数据库的约束条件,反映某一具体应用所涉及的数据必须满足语义要求,由应用环境决定

3.2 关系运算

  1. 并“∪”

    R ∪ S = { t ∣ t ∈ R ∨ t ∈ S } R ∪ S = { t ∣ t ∈ R ∨ t ∈ S } R∪S=\{t|t∈R∨t∈S\}R∪S=\{t|t∈R∨t∈S\} RS={ttRtS}RS={ttRtS}

  2. 交“∩”

R ∩ S = { t ∣ t ∈ R ∧ t ∈ S } R ∩ S = { t ∣ t ∈ R ∧ t ∈ S } R∩S=\{t|t∈R∧t∈S\}R∩S=\{t|t∈R∧t∈S\} RS={ttRtS}RS={ttRtS}

  1. 差“-”

R − S = { t ∣ t ∈ R ∨ t ∉ S } R − S = { t ∣ t ∈ R ∨ t ∉ S } R−S=\{t|t∈R∨t∉S\}R−S=\{t|t∈R∨t∉S\} RS={ttRt/S}RS={ttRt/S}

  1. 笛卡尔积“x”

R × S = { t ∣ t ≤ ( t n , t m ) ∧ t n ∈ R ∧ t m ∈ S } R×S=\{t|t≤(t^n,t^m)∧t^n∈R∧t^m∈S\} R×S={tt(tn,tm)tnRtmS}

  1. 投影(Projection)

投影运算是从关系的垂直方向进行运算,在关系 R 中选出若干属性列 A 组成新的关系,记作 πA®πA®,其形式如下:

π A ® = { t [ A ] ∣ t ∈ R } π A ® = { t [ A ] ∣ t ∈ R } πA®=\{t[A]|t∈R\}πA®=\{t[A]|t∈R\} πAR={t[A]tR}πAR={t[A]tR}


  1. 选择(Selection)

选择运算是从关系的水平方向进行运算,是从关系 R 中选择满足给定条件的元组,记作 σF®σF®,其形式如下:

σ F ® = { t ∣ t ∈ R ∧ F ( t ) = T r u e } σF®=\{t|t∈R∧F(t)=True\} σFR={ttRF(t)=True}


  1. 连接(Join)

    连接(join)就是把两个表中的行按照给定的条件进行拼接而达成新表。

等值连接

两个关系中将进行比较的属性组的值相等的数据相连,若比较的是相同的属性组,不会去重

自然连接

特殊的等值连接,两个关系中进行比较的分量必须是相同的属性组列名,并且在结果集中将重复属性列去掉

4 数据库设计

4.1 函数依赖

设R(U)是属性集U上的关系模式,X,Y是U的子集。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等而在Y上的属性值不相等,则称X函数确定YY函数依赖于X ,记作X→Y,X称为决定因素,即唯一的X确定Y

如果存在X→Y,且Y→X,记作X←→Y
如果X→Y,且Y↛ X,记作X↛ Y

  • 若Y不是X的子集称为非平凡的函数依赖, Y是X的子集(任意关系必然成立)称为平凡的函数依赖
  • 如果X→Y,且X的真子集不函数决定Y,则称为Y对X完全函数依赖,否则称为部分函数依赖
  • 传递依赖:Y非平凡函数依赖于X,X非平凡函数依赖于Y,则X→Z

4.2 公理系统

  1. 自反律
  2. 增广律
  3. 传递律

4.3 范式

第一范式(1NF)

符合1NF的关系中每个属性都不可再分

1NF是所有关系型数据库的基本要求,即关系型数据库中的表一定符合1NF

存在数据冗余、插入异常、删除异常、修改异常的问题

插入异常:由于多个主体的属性放在一起,无法单独插入/删除某个主体的属性

修改异常:数据不唯一,修改其中一条数据后其他数据未改变


第二范式(2NF)

若关系模式R属于第一范式,且关系模式R的每个非主属性完全函数依赖于码,则R也属于第二范式。

人话版:在第一范式的基础上,消除非主属性间码的部分函数依赖

解决了数据冗余、更新异常、插入异常和删除异常


第三范式(3NF)

在满足第二范式的基础上,若关系模式中所有非主属性完全函数依赖于码且不传递依赖码,则称R属于第三范式。

满足第二范式不满足第三范式的情况:学生(学号,课程号,系号,系名,系地址),在这个关系模式中,学号可以推出系号,系号推不出学号,系号可以推出系地址,所有学号可以推出系地址。所以不直接决定非主属性系地址。

解决办法:拆成两个关系模式


BCNF范式

在满足第三范式的基础上,若关系模式中主属性完全依赖于码且不传递依赖码,则称R属于BCNF范式


第四、第五范式

https://blog.csdn.net/xiaoxiao_su123/article/details/113514395

4.4 设计步骤(※背诵选择题)

  1. 需求分析
  2. 概念结构设计
  3. 逻辑结构设计
  4. 物理结构设计
  5. 编码测试
  6. 运行维护

5 结构化查询语言SQL

5.1 SQL的功能

  1. 数据定义功能(DDL):CREATE、DROP、ALTER
  2. 数据查询功能(DQL):SELECT、FROM、WHERE、GROUP BY
  3. 数据更新功能(DML):UPDATE、INSERT、DELETE
  4. 数据控制功能(DCL):GRANT、REVOKE、DENY

5.2 数据类型

  1. char(n)
  2. int
  3. float
  4. date

5.3 完整性约束

5.3.1 列级完整性约束

  1. DEFAULT:默认值
  2. NULL/NOT NULL:是否可空
  3. PRIMARY KEY:主键
  4. UNIQUE:单值约束
  5. REFERENCES<父表><主码>:外键
  6. CHECK<逻辑表达式>:检查约束,取值限制

5.3.2 表级完整性约束

  1. PRIMARY KEY
  2. UNIQUE
  3. FOREIGN KEY<列名>REFERENCES<父表><主码>
  4. CHECK
  • 10
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值