【软件设计师-从小白到大牛】上午题基础篇:第三章 数据库系统

news2025/1/12 1:40:32

文章目录

  • 前言
  • 章节提要
  • 一、三级模式两级映射
    • 真题链接
  • 二、数据库的设计过程
    • 真题链接
  • 三、E-R模型
    • 真题链接
  • 四、关系代数
    • SQL基础(补充)
  • 五、规范化理论
    • 1、函数依赖
    • 2、价值与用途
    • 3、键
    • 4、范式
    • 5、模式分解
  • 六、并发控制
    • 真题链接
    • 分布式数据库特点(补充)
    • 真题链接
  • 七、完整性约束
  • 八、数据库安全
    • 真题链接
  • 九、数据备份
  • 十、数据库故障与恢复
    • 真题链接
  • 十一、数据仓库与数据挖掘
  • 十二、反规范化
  • 十三、大数据

前言


本系列文章为观看b站视频以及b站up主@zst_2001系列视频所做的笔记,感谢相关博主的分享。如有侵权,立即删除。
视频链接:视频链接(注:文章中有关图片等内容未标明出处均出自该视频)
b站up主页:b站up

章节提要

上午下午均有涉及
在这里插入图片描述

一、三级模式两级映射

在这里插入图片描述

  • 在数据库系统中,视图是一个虚拟表,查询时可以从一个或者多个基本表或视图中导出

真题链接

  • 采用二维表格结构表达实体类型及实体间联系的数据模型是 关系模型
  • 数据库系统通常采用三级模式结构:外模式、模式和内模式。这三级模式分别对应数据库的 视图、基本表、存储文件
  • 数据的物理独立性和逻辑独立性分别是通过修改 模式与内模式之间的映像、外模式与模式之间的映像
  • 在数据库系统中,一般由DBA使用DBMS提供的授权功能为不同用户授权,其主要目的是为了保证数据库的 安全性
  • 采用三级结构/两级映像的数据库体系结构,如果对数据库的一张表创建聚簇索引,改变的是数据库的 内模式

二、数据库的设计过程

在这里插入图片描述

真题链接

  • 确定系统边界和关系规范化分别在数据库设计的 需求分析和逻辑设计 阶段进行。
  • 在数据库逻辑结构设计阶段,需要 需求分析 阶段形成的 需求说明文档、数据字典和数据流(程)图 作为设计依据。
  • 关系规范化在数据库设计的 逻辑设计 阶段进行。
  • 在基于Web的电子商务应用中,访问存储于数据库中的业务对象的常用方法之一是 JDBC

三、E-R模型

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

  • 当联系E的类型为 * : * 时必须将E转换成一个独立的关系模式
  • E-R模型向关系模型转换时,两个以上实体之间多对多的联系应该转换为一个独立的关系模式,且该关系模式的关键字由这些实体的关键字组成
  • (注:下图来自希赛网资料)
    希赛网资料希赛网资料
    (说明:E-R图转关系模式的转换原则)
  • (注:下图来自前言中up主视频)image
    (说明:分E-R图之间的冲突)

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

正确答案:C
解析:A、B、C每个实体各转为1个关系模式,多对多关系转为1个关系模式,总共最少可转换为4个关系模式。

真题链接

  • E-R图转换成关系模型时,对于实体E1与E2间的多对多联系,应该将 E1与E2码加上联系的属性独立构成一个关系模式

四、关系代数

在这里插入图片描述

  • 先进行选择或投影操作后再进行笛卡尔积操作效率更高。
  • 若自然连接时无相同属性列,则自然连接的结果和笛卡尔积结果相同
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 对于连接操作不写条件默认是将两个关系的相同字段作等值
  • 左外连接:以左边的关系为基础,寻找左边每一个元组是否可以与右边关系的每一元组进行自然连接,可以自然连接则连接结果即为自然连接的结果,如果不能则将其余部分填成null。最终,所有连接后的结果就组成了左外连接结果
  • 右外连接与左外连接类似:是以右边关系为基础来进行上述操作
  • 全外连接:左外连接结果和右外连接结果进行并运算。
  • (注:下图来自《数据库系统概论》(第6版)(王珊、杜小勇、陈红主编,高等教育出版社))
    在这里插入图片描述
    (说明:外连接相关解释)(了解即可)

SQL基础(补充)

  • 有聚合函数时用Having

  • 先分组再进行聚合函数的计算

  • having+聚合函数正确);where+聚合函数(错误)

  • (注:下图来自希赛网资料)希赛网资料希赛网资料

  • (注:下图来自《软件设计师教程》(第5版)(褚华、霍秋艳主编,清华大学出版社))
    imageimage
    注:具体SQL内容可参考该专栏。

五、规范化理论

1、函数依赖

在这里插入图片描述

2、价值与用途

在这里插入图片描述

3、键

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

正确答案:例1:A,例2:ABCD,例3:B
解析:依据例题上方的方法做,画图分析即可。

4、范式

  • (注:下图来自前言中up主视频)image
    (说明:函数依赖的公理系统(Armstrong公理系统))
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

正确答案:去掉“高级职称人数”。

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

正确答案:将CNO、CREDIT提取出来做一个新的关系模式,在原来关系模式中去掉CREDIT

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

正确答案:将DNO、DNAME、LOCATION独立出来成为一个关系模式,原关系模式只剩前三个字段

在这里插入图片描述

  • (注:下图来自前言中up主视频)(了解即可)image在这里插入图片描述

正确答案:该关系模式候选键可能为SJ、ST,所以不存在非主属性,属于第三范式,而该关系的函数依赖:SJ->T、T->J,而T不是候选键,所以不是BC范式。

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

正确答案:C、D、A
解析:一个部门对应多个职工,应该在职工表中增加部门号,建立起职工和部门的联系。由于第二题已经建立了职工号和部门号的关系,所以无需再添加部门号,而商品号可以确定商品名称,也无需商品名称。所以选C、D、A。

5、模式分解

在这里插入图片描述

  • 将分解后的的关系进行自然连接,如果可以得到原所有属性则是无损连接
  • 无损连接
    (注:下图来自希赛网)
    image
  • (注:下图来自希赛网)
    image
    (说明:是否为无损分解的判断方法)
  • 保持函数依赖
    (注:下图来自希赛网)
    image
    (说明:是否保持函数依赖的判断方法)

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

六、并发控制

在这里插入图片描述

  • (注:下图来自《软件设计师教程》(第5版)(褚华、霍秋艳主编,清华大学出版社))在这里插入图片描述
    (说明:事务的原子性、一致性、隔离性、持久性的相关解释)

真题链接

  • “当多个事务并发执行时,任一事务的更新操作直到其成功提交的整个过程对其他事务都是不可见的”,这一性质通常被称为事务的 隔离性
  • 事务的 持久性 是指,当某个事务提交(COMMIT)后,对数据库的更新操作可能还停留在服务器磁盘缓冲区而未写入到磁盘时,即使系统发生故障,事务的执行结果仍不会丢失。

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

分布式数据库特点(补充)

  • (注:下图来自前言中up主视频)
    image
    (说明:分布式数据库的相关特点)

真题链接

  • 在分布式数据库系统中,位置透明 是指用户无需知道数据存放的物理位置。
  • 逻辑透明 是指局部数据模型透明,即用户或应用程序无需知道局部使用的是哪种数据模型;分片透明 是指用户或应用程序不需要知道逻辑上访问的表具体是如何分块存储的。
  • 当某一场地故障时,系统可以使用其他场地上的副本而不至于使整个系统瘫痪。这称为分布式数据库的 可用性

七、完整性约束

在这里插入图片描述

八、数据库安全

在这里插入图片描述

  • (注:下图来自前言中up主视频)image
    (说明:存储过程具体解释)

真题链接

  • 数据库的安全机制中,通过提供 存储过程 供第三方开发人员调用进行数据更新,从而保证数据库的关系模式不会被第三方所获取。

九、数据备份

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

十、数据库故障与恢复

在这里插入图片描述

真题链接

  • 软硬件故障通常造成数据库中的数据破坏。数据库恢复就是 在尽可能短的时间内,把数据库恢复到故障发生前的状态
  • 计算机系统的软硬件故障可能会造成数据库中数据被破坏。为了防止这一问题,通常需要 定期将数据库作备份:在进行事务处理时,需要将数据更新写入日志文件,以便发生故障时恢复数据库。
  • 为了保证数据库中数据的安全可靠和正确有效,系统在进行事务处理时,对数据的插入、删除或修改的全部有关内容先写入 日志文件;当系统正常运行时,按一定的时间间隔,把数据库缓冲区内容写入 数据文件;当发生故障时,根据现场数据内容及相关文件来恢复系统的状态。

十一、数据仓库与数据挖掘

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

  • (注:下图来自前言中up主视频)(了解即可)
    image

十二、反规范化

在这里插入图片描述

十三、大数据

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1037328.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

二值贝叶斯滤波计算4d毫米波聚类目标动静属性

机器人学中有些问题是二值问题,对于这种二值问题的概率评估问题可以用二值贝叶斯滤波器binary Bayes filter来解决的。比如机器人前方有一个门,机器人想判断这个门是开是关。这个二值状态是固定的,并不会随着测量数据变量的改变而改变。就像门…

关于计算机找不到d3dx9_43.dll,无法继续执行代码修复方法

d3dx9_43.dll是一个动态链接库文件,它是DirectX的一个组件,主要用于处理游戏中的图形、声音等多媒体元素。当这个文件丢失时,可能会导致以下问题: 1. 游戏无法正常运行:由于d3dx9_43.dll负责处理游戏中的多媒体元素&a…

Qt地铁智慧换乘系统浅学( 一 )存储站点,线路信息

存储 定义所需要的容器定义最大最小经纬度[统计站点信息 在经纬度网站](https://map.jiqrxx.com/jingweidu/)读取统计的信息存储到容器其他的一些相关函数debug 显示存储的信息更新最小最大经纬度的函数获取两点之间的距离 根据经纬度 定义所需要的容器 extern QMap<QStrin…

寻找单身狗

在一个数组中仅出现一次&#xff0c;其他数均出现两次&#xff0c;这个出现一次的数就被称为“单身狗“。 一.一个单身狗 我们知道异或运算操作符 ^ &#xff0c;它的特点是对应二进制位相同为 0&#xff0c;相异为 1。 由此我们容易知道两个相同的数,进行异或运算得到的结果…

tkinter的Canvas组件,绘画基本知识

一、说明 画布组件是Tkinter画图的最重要组件。画布对象是几何绘制、动画绘制的不二选项&#xff0c;本文专门对画布Canvas进行详细描述&#xff0c;并配以适当代码支持。 二、tkinter的Canvas组件&#xff0c;绘画基本知识 Canvas组件&#xff0c;可以用来绘图&#xff0c;也…

【Java 基础篇】Java反射详解:深入了解Java的镜像世界

Java是一门面向对象的编程语言&#xff0c;其强大之处之一就是能够在运行时检查、获取和操作类、方法、字段等程序元素。这一特性就是通过Java的反射机制实现的。本文将深入介绍Java反射&#xff0c;包括它的基本概念、使用方法、常见应用场景和注意事项。无需担心&#xff0c;…

云计算战略:选择适合你业务的云平台

文章目录 云计算的概述选择云平台的关键因素1. 业务需求2. 预算3. 性能要求4. 数据隐私和合规性 示例&#xff1a;选择适合的云平台业务需求预算性能要求数据隐私和合规性 代码示例&#xff1a;使用云平台服务结论 &#x1f389;欢迎来到云计算技术应用专栏~云计算战略&#xf…

“源启2.0”:从自上而下的解构,到自下而上的重构

从垂直打穿、到应用重构&#xff0c;中电金信赋能行业数字化转型之路既“向下走”、也“向上看”。“向上”先理解和吃透客户的企业战略&#xff0c;进而自上而下地将企业战略拆解为业务架构&#xff0c;“向下”再将业务架构拆解为应用架构和数据架构&#xff0c;并进一步对齐…

JS预解析/编译(变量提升):var(仅声明,无赋值)、function变量 创建作用域

目录 变量提升/预定义 function和var 重名&#xff1a;函数覆盖变量 不执行代码 重复声明&#xff1a;只提升一次 函数形参&#xff1a;变量提升 带 var 和不带 var 全局作用域&#xff1a; window 的属性 私有/函数作用域&#xff1a; 带 var 的是私有变量 IIFE 函…

Linux 终端与进程

有趣的问题 Linux 中的 终端&#xff0c;控制台&#xff0c;TTY&#xff0c;PTY 究竟是什么&#xff1f;它们与进程有什么关系&#xff1f; 历史回顾&#xff1a;控制台 (Console) 控制台是一个直接控制设备的面板 (属于设备的一部分) 计算机设备的控制台&#xff1a;按键 &…

2FSK调制解调VHDL,Quartus

名称&#xff1a;2FSK调制解调VHDL&#xff08;代码在文末付费下载&#xff09; 软件&#xff1a;Quartus 语言&#xff1a;VHDL 要求&#xff1a;使用VHDL实现2FSK的调制和解调&#xff0c;并进行仿真 代码下载&#xff1a;2FSK调制解调VHDL,Quartus_Verilog/VHDL资源下载…

C++ stack queue模拟实现

目录 一.stack 二.queue 三.deque STL中有6大组件&#xff0c;我们前面讲的string/vector/list是容器&#xff0c;还有迭代器&#xff0c;以及算法&#xff08;比如find&#xff0c;swap&#xff0c;reverse&#xff0c;sort&#xff0c;merge函数&#xff09;&#xff0c;仿函…

【Java 基础篇】Java Stream 流详解

Java Stream&#xff08;流&#xff09;是Java 8引入的一个强大的新特性&#xff0c;用于处理集合数据。它提供了一种更简洁、更灵活的方式来操作数据&#xff0c;可以大大提高代码的可读性和可维护性。本文将详细介绍Java Stream流的概念、用法和一些常见操作。 什么是Stream…

bootstrapv4轮播图去除两侧阴影及线框的方法

文章目录 前言一、前提条件&#xff1a;二、bootstrap文档组件展示与实际应用1.官方文档展示如下&#xff1a;没有阴影2.实际应用情况如下&#xff1a; 三、解决方案 前言 这篇文章主要介绍了bootstrapv4轮播图去除两侧阴影及线框的方法,本文通过示例代码给大家介绍的非常详细…

基于微信小程序的项目申报管理系统设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言用户微信端的主要功能有&#xff1a;管理员的主要功能有&#xff1a;具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序&#xff08;小蔡coding&#xff09;有保障的售后福利 代码参考源码获取 前言 &#x1f497;博主介绍&#xff1a;✌全网粉…

【Vue】vue-cli一站式搭建SPA项目

&#x1f389;&#x1f389;欢迎来到我的CSDN主页&#xff01;&#x1f389;&#x1f389; &#x1f3c5;我是Java方文山&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; &#x1f31f;推荐给大家我的专栏《Vue快速入门》。&#x1f3af;&#x1f3af; &…

vtk- 数据类型(一) 三角链实例代码

三角链实例代码 #include <iostream> #include <string> #include <regex> #include "tuex.h" #include "vtkCylinderSource.h" #include "vtkPolyDataMapper.h" #include "vtkActor.h" #include "vtkRendere…

Java --- MySQL8数据库优化性能查看工具

目录 一、数据库服务器优化步骤 ​编辑二、查看系统性能的参数 三、统计SQL的查询成本&#xff1a;last_query_cost 四、定位执行慢的SQL&#xff1a;慢日志查询 4.1、开启并设置慢查询日志查询参数 4.2、查看慢查询数目 4.3、慢查询日志分析工具&#xff1a;mysqldumps…

MySQL单表查询和多表查询

一、单表查询 素材&#xff1a; 表名&#xff1a;worker-- 表中字段均为中文&#xff0c;比如 部门号 工资 职工号 参加工作等 CREATE TABLE worker (部门号 int(11) NOT NULL,职工号 int(11) NOT NULL,工作时间 date NOT NULL,工资 float(8,2) NOT NULL,政治面貌 varchar(10)…

帆软FineReport决策报表之页面布局

最近在用帆软决策报表绘制首页大屏&#xff0c;记录使用过程&#xff0c;方便查看。 版本&#xff1a;FineReport10.0 第一步、页面布局 页面布局其实就是组件的排列组合&#xff0c;决策报表主区域body有两种布局方式&#xff1a;自适应布局和绝对布局。 1&#xff09;自适应…