软件设计师全套备考系列文章15 -- 数据库:规范化、控制功能、大数据

软考-- 软件设计师(15)-- 数据库:规范化、控制功能、大数据



前言

考试时间:每年5月、11月,软件设计师每年都会开考。
考试条件:三不限
考试形式: 一共两门
	计算机于软件工程基本知识--120分钟--机考--选择题--75分(45及格)
	软件设计--120分钟--机考--简答题(4道必做,1道二选一做)--75分(45及格)
	两门都得一次性及格才算通过,一共4小时考试时间。

软件行业从事人员学习视频:https://www.bilibili.com/video/BV1Qc411G7fB?vd_source=d82c92f6c1fd8c6785c6b557a68cb7b3

推荐博客:http://t.csdnimg.cn/5VzY5
推荐bilibli博主:zst_2001

由于本人从事软件开发4年,有一定的基础,所以本系列博客笔记皆从于第一个视频记录笔记。

一、章节考点

在这里插入图片描述

二、规范化

这边博主讲的有点乱,我自己整一下:
	推荐博客:http://t.csdnimg.cn/JkKBn
	

	候选键:关系中的一个属性组,其值能唯一标识一个元组。若从属性组中去掉任何一个属性,它就不具有这一性质了,这样的属性组称作
		候选键。例如:成绩(学号,课程号,成绩),其中候选键为(学号,课程号),去除其中任意一个都无法唯一标识这个元组。
	主属性:任何一个候选键中的属性称作主属性。(请记住这个概念)
	主键:用户从一个关系的多个候选键中,选定一个作为老大,就是主键。
	键 :也叫 码,英文key,其实表示的就是候选键,有些题目或者讲解说的 键/码,直接理解为候选键就行了。

	函数依赖:属性X-->Y,也就是属性X决定Y,则Y函数依赖X,简称Y依赖X;
	部分函数依赖:属性X-->Y,属性XZ-->Y,说明Y不完全依赖于X,则称Y部分依赖X;
		这里要区分1NF转为2NF:在1NF基础上,消除 【非主属性】 对 【候选键】 的部分依赖,则称它符合2NF。
	传递函数依赖:属性X-->YY-->Z,则称作存在传递依赖。
		这里要区分2NF转为3NF:在2NF基础上,消除 【非主属性】 对 【候选键】 的传递依赖,则称它符合3NF。
		
	决定因素:属性X-->Y,则X为决定因素。属性XZ-->Y,则XZ为决定因数。

	1NF:关系中每一属性不可再分。即不能以集合、序列等作为属性。(也就是不能表中套表,要保证数据的原子性。)
	2NF:在1NF基础上,消除 【非主属性】 对 【候选键】 的部分依赖。
	3NF:在2NF基础上,消除 【非主属性】 对 【候选键】 的传递依赖。
	BCNF:在3NF基础上,消除【主属性】对键的【传递依赖】,则称它符合BCNF。根据参考博客理解为:对于关系模式R,如果每一个
		函数依赖的【决定因素】都包含【候选键】,则R属于BCNF范式。
		ex:
		现有关系模式:通讯(城市名,街道名,邮政编码),函数依赖关系集为:F={(城市名,街道名)->邮政编码,邮政编码->城市名},
		此时,候选键(城市名,街道名)非主属性邮政编码完全依赖于候选键,且无传递依赖,属于3NF。
		那么它是否属于BCNF呢?
		答:不属于
		解析: 对于决定因素(城市名,街道名),它包含键(城市名,街道名),其实它本身就是键了,没问题;
			  对于决定因素邮政编码,它不包含键(城市名,街道名)
			  所以它不属于BCNF。在关系模式R中,如果每一个决定因素都包含码,则R属于BCNF。

常考题解题思路:
	1、求候选码、主属性?
		1)、将函数依赖集用有向图表示;
		2)、找入度为0的属性,并且以该属性为起点,尝试遍历有向图所有节点,若能则该属性为此关系模式的一个候选键;
		3)、若入度为0的属性无法遍历图中的所有节点,则将中间节点(既有入度,也有出度)的加入集合进来,直至该集合能遍历所有节点
		Tips:入度为0的点,要不就直接是候选键,要不就是候选键集合中的一个值。
	2、判断关系范式X是哪个规范?
		1)、如果关系X中每一属性不可再分,则其可能是1NF2NF3NFBCNF2)、找出题中所有的候选键;找出所有的主属性;
		3)、看看函数依赖集中是否存在【非主属性】对【候选键】的【部分函数依赖】;若存在,则说明X1NF,否则可能是2NF3NFBCNF4)、看看函数依赖集中是否存在【非主属性】对【候选键】的【传递函数依赖】;若存在,则说明X2NF,否则可能是3NFBCNF5)、看看函数依赖集中是否存在【主属性】对【候选键】的【传递函数依赖】若存在,则说明X3NF,否则是BCNF;(就是看看每
		一个函数依赖的【决定因素】是否都包含【候选键】,都包含是BCNF,否则3NF);
		
	31NF规范化为2NF1)、找出题中所有的候选键;找出所有的主属性;
		2)、看看函数依赖集中是否存在【非主属性】对【候选键】的【部分函数依赖】;若存在则将这个【部分函数依赖】拆开来
	42NF规范化为3NF1)、找出题中所有的候选键;找出所有的主属性;
		2)、看看函数依赖集中是否存在【非主属性】对【候选键】的【传递函数依赖】;若存在则将这个【传递函数依赖】拆开来
	43NF规范化为BCNF1)、找出题中所有的候选键;找出所有的主属性;
		2)、看看函数依赖集中是否存在【主属性】对【候选键】的【传递函数依赖】;若存在则将这个【传递函数依赖】拆开来

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

三、数据库的控制功能

在这里插入图片描述

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

四、大数据、数据仓库

在这里插入图片描述

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

  • 9
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

练习两年半的攻城狮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值