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

一.数据库系统

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】
在这里插入图片描述

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

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REAdMe.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REAdMe.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看READme.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值