Part9.数据库基础和数据库设计

本文详细解析了数据库系统的三级模式映射,E-R模型的应用,以及关系型数据库的规范化理论,包括范式理论、模式分解、并发控制和完整性约束等。通过实例讲解了如何求解候选键、判断范式并进行模式分解。还涉及数据流图、数据库设计的关键步骤和技巧,以及反范化技术在优化中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.数据库系统

1.三级模式两级映射

在这里插入图片描述

2.E-R模型

在这里插入图片描述
例题:
在这里插入图片描述

3.数据库操作和运算

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

4.函数依赖

在这里插入图片描述
例如:UserId确定UserName,则:UserId–>UserName 或者称 UserName 依赖UserId

二.关系型数据库的规范化理论

1.规范化理论的价值

在这里插入图片描述

2.键

在这里插入图片描述
例如: 有字段 学号,身份证号,姓名,性别;
(学号,身份证号,姓名)这个组合能确定性别,那么这个组合可以认为是超键;
很明显,在超键中,姓名是多余的,消除多余的字段后,剩下学号和身份证号为候选键;
在候选键中任选一个,都能当主键。

(1)求候选健

在这里插入图片描述
在这里插入图片描述
解题关键点:先画出关系图
例1:入度为0的有A1,从A1能确定其他的属性,所以候选关键字是A1,选A
例2:ABCD的组合为候选键
例3:A和B都可以确定其他的属性,选B

3.范式理论规范(3大范式)

在这里插入图片描述
主属性:候选关键字包含的属性。
在这里插入图片描述
 解:去掉高级职称人数字段即可。


在这里插入图片描述
 解:本题主键由2个字段组成(学号、课程号---->一般情况下主键只有一个,但是本题就是有2个,没得办法),非主属性完全依赖主键的意思是:分数字段和学分字段必须由主键同时作用才能推断下来,很显然,(学号、课程号)一起才能推断出分数,但是课程号就可以直接推断出学分,所以学分属性只是部分依赖主键,并没有完全依赖。解决方案:拆分表,去掉学分字段,同时新建一张:课程号和学分字段的表



在这里插入图片描述
 解:肯定符合第二范式,因为只有一个属性作为主键。但是非主属性DNO(部门号)能够推断出院系和楼号,所以非主属性DNO存在传递依赖,不满足3NF;解决方案:拆分表,去掉院系和楼号字段,新建一张表:部门号,院系,楼号


在这里插入图片描述
 解:先画出图,然后能够确定候选关键字为SJ或者ST,如果满足BCNF,那么就应该满足SJ一起推断出T,和ST一起推断出J,很显然,本题单独T就可以推断出J,并不需要ST一起推断,所以不满足BCNF


4.模式分解

在这里插入图片描述



在这里插入图片描述


在这里插入图片描述
在这里插入图片描述


在这里插入图片描述

5.并发控制

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

6.完整性约束

在这里插入图片描述

7.安全、备份、恢复

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

8.数据仓库与数据挖掘

在这里插入图片描述

9.反范化技术

空间换时间的一种解决办法
在这里插入图片描述

三.数据流图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
 例题1
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
解:
【问题1】 E1:前端应用;E2:数据管理员;E3:后端数据库
【问题2】 D1:用户表;D2:操作表;D3:权限表
【问题3】

在这里插入图片描述

【问题4】 黑洞(有输入,无输出),奇迹(有输出,无输入),数据流命名(例如命名相同),输入流加工后产生不合实际的输出流



 例题2
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
解:
【问题1】 E1:非信用卡客户;E2:信用卡客户;E3:银行
【问题2】

在这里插入图片描述

【问题3】信用卡申请表,起点应为E1,终点应为P4;激活请求:起点应该是E2,终点为P3;
【问题4】P1:交易信息查询;P2:客户信息管理;P3:信用卡激活;P4:信用卡申请;

四.数据库设计

在这里插入图片描述

在这里插入图片描述
答题技巧:认真审题

案例分析1
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
解:【问题1】n;n;m(别收到题目信息误导)
  【问题2】:如下图所示

在这里插入图片描述

在这里插入图片描述
解:【问题3】
(4)员工号,部门号(容易错漏)
(5)客房号
(6)身份证号
(7)岗位
(8)客房号,身份证号
 【问题4】:缺点:造成数据冗余;优点:减少一次连表操作,查询效率高

案例分析2

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

解:【问题1】:如图
在这里插入图片描述
 【问题2】a:商场编号;b:部门编号;c:员工编号;
部门的主键为:部门编号,外键为商场编号
员工主键为:员工编号,外键为部门编号
经理的主键外键都为:员工编号

 【问题3】
在这里插入图片描述

  
  
  本文参考《软件设计师教程》及网络上的教程,如有侵权请联系删除

标题基于SpringBoot的在线网络学习平台研究AI更换标题第1章引言介绍基于SpringBoot的在线网络学习平台的研究背景、意义、国内外现状、论文研究方法及创新点。1.1研究背景意义阐述在线网络学习平台的重要性及其在教育领域的应用价值。1.2国内外研究现状分析当前国内外在线网络学习平台的发展状况及趋势。1.3研究方法创新点说明本研究采用的方法论在研究过程中的创新之处。第2章相关理论技术概述SpringBoot框架、在线教育理论及相关技术基础。2.1SpringBoot框架概述介绍SpringBoot框架的特点、优势及其在Web应用中的作用。2.2在线教育理论阐述在线教育的基本理念、教学模式及其传统教育的区别。2.3相关技术基础介绍开发在线网络学习平台所需的关键技术,如前端技术、数据库技术等。第3章在线网络学习平台设计详细描述基于SpringBoot的在线网络学习平台的整体设计方案。3.1平台架构设计给出平台的整体架构图,并解释各个模块的功能及相互关系。3.2功能模块设计详细介绍平台的主要功能模块,如课程管理、用户管理、在线考试等。3.3数据库设计说明平台的数据库设计方案,包括数据表结构、数据关系等。第4章平台实现测试阐述平台的实现过程及测试方法。4.1平台实现详细介绍平台的开发环境、开发工具及实现步骤。4.2功能测试对平台的主要功能进行测试,确保功能正常且符合预期要求。4.3性能测试对平台的性能进行测试,包括响应时间、并发用户数等指标。第5章平台应用分析分析平台在实际应用中的效果及存在的问题,并提出改进建议。5.1平台应用效果介绍平台在实际教学中的应用情况,包括用户反馈、使用情况等。5.2存在问题及原因分析分析平台在运行过程中出现的问题及其原因,如技术瓶颈、用户体验等。5.3改进建议措施针对存在的问题提出具体的改进建议措施,以提高平台的性能用户满意度
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值